成熟丰满熟妇高潮XXXXX,人妻无码AV中文系列久久兔费 ,国产精品一国产精品,国精品午夜福利视频不卡麻豆

您好,歡迎來到九壹網(wǎng)。
搜索
您的當前位置:首頁Java 集合類(一)

Java 集合類(一)

來源:九壹網(wǎng)

今天我們先講一下Collection:

  • java.util.Collection是一種java集合接口,它提供了對集合對象的基本操作通用接口方法,同時它還有很多具體實現(xiàn):

? ? ?

? ? ?

? ? ?注:以上圖片只列舉常用集合類

  • java.util.Collections是一個包裝類,它包含許多有關(guān)集合操作的靜態(tài)多態(tài)方法,此類不能實例化,它就像個工具類,服務(wù)與java的Collection。有關(guān)Collections的具體方法可參考JDK說明文檔(),下面我舉出幾個方法示例:

? ? ??

import java.util.Collection;
import java.util.Collections;
import java.util.ArrayList;
import java.util.List;

public class test {
    private double[] a = {123,33,423,655,4553};
    List<Double> l = new ArrayList();
    List<Double> l2 = new ArrayList();

	public static void main(String[] args) {
             new test().sort();
	}
	
	public void sort(){
		for(int i = 0; i<a.length;i++ ){
			l.add(a[i]);
		}
		Collections.sort(l);
		for(int i = 0 ;i<a.length;i++){
			System.out.println(l.get(i));
		}
	}

}

  運行結(jié)果如下:

可在上面代碼的基礎(chǔ)上添加同類方法,如:

把上面sort()中的Collections.sort(l);--->Collections.shuffle(l); ? ?//隨機排序

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?--->Collections.reverse(l); ? ?//反轉(zhuǎn)排序

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?--->Collections.min(l); ? ? ?//返回最小元素(max,最大)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?--->Collections.fill(l,"334"); ? //用334替換所有元素

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?......

?

? ?2.常見java容器的比較:

接口

特性

實現(xiàn)類

實現(xiàn)類特性

成員要求

List

線性、有序的存儲容器,可通過索引訪問元素

ArrayList

數(shù)組實現(xiàn)。非同步。

?

Vector

類似ArrayList,同步。

?

LinkedList

雙向鏈表。非同步。

?

Map

保存鍵值對成員

HashMap

基于哈希表的?Map?接口的實現(xiàn),滿足通用需求

任意Object對象,如果修改了equals方法,需同時修改hashCode方法

TreeMap

默認根據(jù)自然順序進行排序,

或者根據(jù)創(chuàng)建映射時提供的?進行排序

鍵成員要求實現(xiàn)Comparable接口,或者使用Comparator構(gòu)造TreeMap。鍵成員一般為同一類型。

LinkedHashMap

類似于HashMap,但迭代遍歷時取得“鍵值對”的順序是其插入順序或者最近最少使用的次序

與HashMap相同

IdentityHashMap

使用==取代equals()對“鍵值”進行比較的散列映射

成員通過==判斷是否相等

WeakHashMap

弱鍵映射,允許釋放映射所指向的對象

?

ConcurrentHashMap

線性安全的Map

?

Set

成員不能重復

HashSet

為快速查找設(shè)計的Set

元素必須定義hashCode()

TreeSet

保持次序的Set,底層為樹結(jié)構(gòu)

元素必須實現(xiàn)Comparable接口

LinkedHashSet

內(nèi)部使用鏈表維護元素的順序(插入的次序)

元素必須定義hashCode()

? ? 注:在滿足要求的情況下,Map應(yīng)盡量使用HashMap,Set應(yīng)盡量使用HashSet

? ?3.Collection的學習:

? ?實例1:

import java.util.*;

public class SimpleCollection{
 
     public static void main(String[] args){
           Collection<Integer> c = new ArrayList<Integer>();
           for(int i = 0;i < 10; i++)
               c.add(i);  //Autoboxing
           for(Integer i: c)
             System.out.println(i +", ");
     }
}

/*
    0,1,2,3,4,5,6,7,8,9,
*/

  實例2:

/*
  如何向Collection添加一組元素
*/
//以下是方法體
Collection<Integer> collection = new ArrayList<Integer>
              (Arrays.asList(1,2,3,4,5)); //Array像Collections一樣是工具類
Integer[] moreInt = {6,7,8,9,10};
Collection.addAll(Arrays.asList(moreInt));

Collections.addAll( collection,11,12,13,14);  //Collection對象作參數(shù)
Collections.addAll( collection, moreInt);

List<Integer> list = Arrays.asList(16,17,18);
list.set(1,99);
//list.add(21)  //錯誤,asList產(chǎn)生的List的長度不可變,只能修改元素值

? 下一節(jié)學習?。?/span>

### ? ?學習從來都是一個過程,對對錯錯對對...若文中有錯誤,還望讀者批評指出 ? ? ?###

轉(zhuǎn)載于:https://www.cnblogs.com/allenpengyu/p/3452313.html

因篇幅問題不能全部顯示,請點此查看更多更全內(nèi)容

Copyright ? 2019- 91gzw.com 版權(quán)所有 湘ICP備2023023988號-2

違法及侵權(quán)請聯(lián)系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市萬商天勤律師事務(wù)所王興未律師提供法律服務(wù)