日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Java基礎(chǔ)詳解之集合框架工具Collections

瀏覽:37日期:2022-08-13 17:01:54
一、Collections

說明:Collcetions是集合框架中的工具,特點是方法都是靜態(tài)的。

二、Collections中的常見方法

1,對list進(jìn)行二分查找:前提該集合一定要有序。int binarySearch(list,key);//要求list集合中的元素都是Comparable的子類。int binarySearch(list,key,Comparator);2,對list集合進(jìn)行排序。sort(list);sort(list,comaprator);3,對集合取最大值或者最小值。max(Collection)max(Collection,comparator)min(Collection)min(Collection,comparator)4,對list集合進(jìn)行反轉(zhuǎn)。reverse(list);5,對比較方式進(jìn)行強(qiáng)行逆轉(zhuǎn)。Comparator reverseOrder();Comparator reverseOrder(Comparator);6,對list集合中的元素進(jìn)行位置的置換。swap(list,x,y);7,對list集合進(jìn)行元素的替換。如果被替換的元素不存在,那么原集合不變。replaceAll(list,old,new);三、Aarrays:用于對數(shù)組操作的工具類

1,binarySearch(int[]) binarySearch(double[])...2,sort(int[]) sort(char[])....3,toString(int[]).....:將數(shù)組變成字符串。4,copyOf();復(fù)制數(shù)組。5,copyOfRange():復(fù)制部分?jǐn)?shù)組。6,equals(int[],int[]);比較兩個數(shù)組是否相同。7,List asList(T[]);將數(shù)組變成集合。這樣可以通過集合的操作來操作數(shù)組中元素,但是不可以使用增刪方法,add,remove。因為數(shù)組長度是固定的,會出現(xiàn)UnsupportOperationExcetion。可以使用的方法:contains,indexOf。。。如果數(shù)組中存入的基本數(shù)據(jù)類型,那么asList會將數(shù)組實體作為集合中的元素。如果數(shù)組中的存入的應(yīng)用數(shù)據(jù)類型,那么asList會將數(shù)組中的元素作為集合中的元素。如果想要將集合變數(shù)組:可以使用Collection中的toArray方法。傳入指定的類型數(shù)組即可,該數(shù)組的長度最好為集合的size。四、二分查找過程中的默認(rèn)比較器

// 在二分查找中設(shè)定默認(rèn)的比較器import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class binarySerach { public static void main(String[] args) {sortDemo(); } public static void sortDemo() {List<String> list = new ArrayList<String>(); // List集合沒有比較方法list.add('abcd');list.add('aaa');list.add('bbb');list.add('abcdcdc');list.add('z');list.add('zz');list.add('qq');sop('原集合為:'+list);int index = Collections.binarySearch(list,'bbb',new StrLenComparator2());sop('自定義比較器的index: '+index);int index2 = Collections.binarySearch(list,'abcd');sop('不傳入比較器index:'+index2); } public static void sop(Object obj) {System.out.println(obj); }}class StrLenComparator2 implements Comparator<String>{ public int compare(String s1, String s2) {if(s1.length() > s2.length()) return 1;if (s1.length() < s2.length()) return -1;return s1.compareTo(s2); }}五、集合轉(zhuǎn)化為數(shù)組

// 集合變數(shù)組// 為什么需要這樣做?為了對元素進(jìn)行限定操作,不需要進(jìn)行增刪。import java.lang.reflect.Array;import java.util.ArrayList;import java.util.Arrays;public class CollectionToArray { public static void main(String[] args) {ArrayList<String> al = new ArrayList<String>();al.add('ABC1');al.add('ABC2');al.add('ABC3');al.add('ABC4');al.add('ABC5');System.out.println(al);String[] arr = al.toArray(new String[al.size()]); // toArray 方法把集合轉(zhuǎn)換為數(shù)組System.out.println(Arrays.toString(arr));//打印內(nèi)容 }}六、增強(qiáng)for循環(huán)

// 增強(qiáng)for循環(huán)的出現(xiàn)是為了解決總是使用迭代器方法進(jìn)行元素提取import java.util.ArrayList;import java.util.HashMap;import java.util.Map;import java.util.Set;public class ForEachDemo { public static void main(String[] args) {// 例子一:ArrayList<String> al = new ArrayList<String>();al.add('ABC1');al.add('ABC2');al.add('ABC3');al.add('ABC4');for(String s : al){ System.out.println(s);}//System.out.println(al);// 例子二:HashMap的增強(qiáng)for循環(huán),使用entrySet()System.out.println('例子二:HashMap的增強(qiáng)for循環(huán),使用entrySet()');HashMap<Integer,String> hm = new HashMap<Integer, String>();hm.put(1,'Wzy1');hm.put(2,'Wzy2');hm.put(3,'Wzy3');hm.put(4,'Wzy4');for (Map.Entry<Integer,String> it : hm.entrySet()){ System.out.println('Key: '+it.getKey()+'--- Value:'+it.getValue());}// 例子三:HashMap的增強(qiáng)for循環(huán),使用KeySet()System.out.println('例子三:HashMap的增強(qiáng)for循環(huán),使用KeySet()');Set<Integer> keySet = hm.keySet();for(Integer i : keySet){ System.out.println('Key: '+i+'--- Value:'+hm.get(i));} }}七、關(guān)于可變參數(shù)的方法

一般的,在java中使用重載的方法應(yīng)對不同的數(shù)據(jù)對象,讓它們都可以使用方法,但是還有一種寫法,可以只寫一個方法來接收數(shù)據(jù),也不需要建立新的對象。

// 例子一:public class mutilMethod { public static void main(String[] args) {show(1,2,3,4,5); } public static void show(int...a) // 可變參數(shù)寫法,數(shù)組的特殊值放在開頭 {System.out.println(a.length); }}//例子二:數(shù)組有特殊的public class mutilMethod { public static void main(String[] args) {show('字符串',2,3,4,5); // 特殊字符String與int發(fā)生組合 } public static void show(String c, int...a) // 可變參數(shù)寫法,數(shù)組的特殊值放在開頭 {System.out.println(a.length); }}八、關(guān)于reverseOrder函數(shù)使用

(1)Collections提供的比較器作為新比較器(2)強(qiáng)行逆轉(zhuǎn)現(xiàn)有比較器

import java.util.*;public class reverseOrder { public static void main(String[] args) {sortDemo(); } public static void sortDemo() {TreeSet<String> ts = new TreeSet<String>(Collections.reverseOrder()); // 傳入reverseOrder()將集合倒序排列ts.add('aaa');// 或者手寫一個自定義比較器,之后使用reverseOrder()函數(shù)強(qiáng)行逆轉(zhuǎn)ts.add('abc');ts.add('a');ts.add('aa');ts.add('bbb');ts.add('cccc');ts.add('ddddd');ts.add('eeeeee');Iterator it = ts.iterator();while (it.hasNext()){ sop(it.next());} } public static void sop(Object obj) {System.out.println(obj); }九、靜態(tài)類導(dǎo)入

import java.util.*;import static java.util.Arrays.*;import static java.lang.System.*;public class StaticImport extends Object { public static void main(String[] args) {int[] arr = {3,1,5};sort(arr); // 去掉了Arrays.int index = binarySearch(arr,1);// 去掉了Arrays.System.out.println(Arrays.toString(arr)); // 不能去掉Arrays.out.println('index = '+index);// 去掉System. }}

到此這篇關(guān)于Java基礎(chǔ)詳解之集合框架工具Collections的文章就介紹到這了,更多相關(guān)java集合框架工具Collections內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产高清视频一区二区| 国产精品久久| 精品久久久网| 国产精品不卡| 久久久久午夜电影| 一级成人国产| 国产精品久久久久久妇女| 给我免费播放日韩视频| 久久精品国内一区二区三区水蜜桃| 国产麻豆久久| 最新国产精品| 国产一区二区亚洲| 在线看片不卡| 国产精品15p| 日本精品不卡| 视频一区日韩| av中文资源在线资源免费观看| 国产不卡一区| 黑丝一区二区| 国产精品久久久久久久免费软件| 91免费精品| 日精品一区二区三区| 欧美男人天堂| 欧美中文一区| 欧美精品一区二区三区精品| 国产精品日韩| 国产精品午夜av| 美日韩精品视频| 欧美13videosex性极品| 国产日韩欧美一区二区三区在线观看 | 国产精品久久久久久模特| 久久国产成人午夜av影院宅| 日韩在线观看中文字幕| 99久久激情| 成人一区不卡| 国产精品手机在线播放| 久久av一区| 欧美91视频| 成人羞羞视频播放网站| 怡红院精品视频在线观看极品| 国产精品成人一区二区不卡| 欧美日韩亚洲国产精品| 石原莉奈在线亚洲三区| 精品在线99| 99成人在线视频| 最新中文字幕在线播放| 久久精品国产在热久久| 欧美日韩亚洲一区| 日本天堂一区| 久久精品xxxxx| 久久国内精品视频| 国产无遮挡裸体免费久久| 亚州精品视频| 69堂精品视频在线播放| 清纯唯美亚洲综合一区| 日韩中文字幕| 亚洲欧洲专区| 婷婷成人av| 国产精品白浆| 国产videos久久| 99久久亚洲精品蜜臀| 激情婷婷综合| 日韩影院精彩在线| 亚洲人成网77777色在线播放| 免费成人av在线播放| 一区二区三区国产盗摄| 亚洲有吗中文字幕| 国产精品亚洲一区二区在线观看| 国产乱论精品| 日韩欧美字幕| 久色成人在线| 国产精品xxx在线观看| 欧美在线看片| 日韩免费看片| 亚洲天堂av资源在线观看| 青青草国产精品亚洲专区无| 精品中国亚洲| 亚洲手机视频| 91成人在线| 欧美福利一区| 日韩激情视频网站| 精品72久久久久中文字幕| 色婷婷精品视频| 婷婷久久免费视频| 97精品国产一区二区三区 | 性欧美69xoxoxoxo| 国产欧美日韩在线观看视频| 极品av在线| 日本成人在线不卡视频| 色婷婷亚洲mv天堂mv在影片| 免费久久99精品国产自在现线| 国产精品一线| 日韩视频免费| 成人在线视频区| 亚洲ww精品| 性欧美xxxx免费岛国不卡电影| 欧美一区=区三区| 先锋影音国产一区| 激情五月综合网| 另类综合日韩欧美亚洲| 中国女人久久久| 日韩欧美在线中字| 国产日产精品一区二区三区四区的观看方式| 日韩精品一区二区三区免费观看| 国产精品亚洲成在人线| 亚洲在线一区| 性欧美69xoxoxoxo| 999精品在线| 日韩国产激情| 精品亚洲成人| 国产日产精品_国产精品毛片 | 中国字幕a在线看韩国电影| 青草久久视频| 色婷婷成人网| 日韩有吗在线观看| 蜜桃视频一区二区三区| 久久成人亚洲| 美女被久久久| 亚洲制服一区| 欧美日韩1区2区3区| 欧美亚洲三区| 久久99国产精品视频| 美女视频黄久久| 成人免费一区| 视频福利一区| 一本一道久久a久久精品蜜桃| 最新亚洲一区| 日本一区二区三区中文字幕| 日韩精品一页| 麻豆精品久久久| 国产极品久久久久久久久波多结野| 日韩欧美中文字幕一区二区三区| 热久久久久久久| 日本在线不卡视频一二三区| 国产一区 二区| 国产在线观看91一区二区三区 | 蜜臀久久99精品久久久画质超高清| 亚洲欧洲av| 亚洲五月综合| 韩国精品主播一区二区在线观看| 久久99视频| 影视先锋久久| 国产精品一区二区三区av| 午夜久久av| 欧美经典一区| 日韩欧美综合| 亚洲一区不卡| 日韩精品一区二区三区免费视频 | 视频一区欧美日韩| 国产精品hd| 麻豆精品久久久| 国产在线看片免费视频在线观看| 欧美激情视频一区二区三区在线播放| 国产欧美三级| 免费在线小视频| 久久国产高清| 久久激情五月激情| 中文一区一区三区高中清不卡免费| 欧美激情在线精品一区二区三区| 国产精品白丝一区二区三区| 精品国产欧美日韩| 久久精品免费一区二区三区| 中文字幕免费一区二区| 国产精品magnet| 麻豆免费精品视频| 精品视频网站| 亚洲女同中文字幕| 欧美精品成人| 亚洲免费播放| 国产91在线播放精品| 爽爽淫人综合网网站| 国产精品对白久久久久粗| 欧产日产国产精品视频| 伊人影院久久| 亚洲1234区| 国产欧美日韩精品一区二区免费 | 国产日韩三级| 日韩一区欧美| 欧美黑人巨大videos精品| 婷婷丁香综合| 欧美韩一区二区| 欧美亚洲网站| av不卡免费看| 国产精品88久久久久久| 久久久久免费| 精品一区二区三区亚洲| 蜜桃视频免费观看一区| 视频二区不卡| 麻豆视频久久| 日韩不卡手机在线v区| 亚洲成人一区| 国产精品一区免费在线| 亚洲欧洲国产精品一区| 国产视频久久| 国产一区二区精品| 国精品一区二区| 大香伊人久久精品一区二区| 国产美女撒尿一区二区| 日本h片久久| 97精品国产99久久久久久免费|