首頁 > IT知識爱赢国际平台,爱赢国际注册,爱赢国际app > 爱赢国际注册之Java數組操作的10大方法

爱赢国际注册之Java數組操作的10大方法

2017年10月27日10:22:33來源:海文國際         760
分享到:
IT知識文章: 

爱赢国际注册之Java數組操作的10大方法

數組是具有相同數據類型的一組數據的集合,下面是爱赢国际注册小編整理的Java數組操作的10大方法,一起來學習下吧:

0、定義一個Java數組

String[]aArray=newString[5];

String[]bArray={"a","b","c","d","e"};

String[]cArray=newString[]{"a","b","c","d","e"};

第一種是定義了一個數組,并且指定了數組的長度,我們這里稱它為動態定義。

第二種和第三種在分配內存空間的同時還初始化了值。

1、打印Java數組中的元素

int[]intArray={1,2,3,4,5};

StringintArrayString=Arrays.toString(intArray);

//printdirectlywillprintreferencevalue

System.out.println(intArray);

//[I@7150bd4d

System.out.println(intArrayString);

//[1,2,3,4,5]

這里的重點是說明了Java中數組的引用和值得區別,第三行直接打印intArray,輸出的是亂碼,因為intArray僅僅是一個地址引用。第4行輸出的則是真正的數組值,因為它經過了Arrays.toString()的轉化。對Java初學者來說,引用和值仍需重視。

2、從Array中創建ArrayList

String[]stringArray={"a","b","c","d","e"};

ArrayListarrayList=newArrayList(Arrays.asList(stringArray));

System.out.println(arrayList);

//[a,b,c,d,e]

為什么要將Array轉換成ArrayList呢?可能是因為ArrayList是動態鏈表,我們可以更方便地對ArrayList進行增刪改,我們并不需要循環Array將每一個元素加入到ArrayList中,用以上的代碼即可簡單實現轉換。

3、檢查數組中是否包含某一個值

String[]stringArray={"a","b","c","d","e"};

booleanb=Arrays.asList(stringArray).contains("a");

System.out.println(b);

//true

先使用Arrays.asList()將Array轉換成List,這樣就可以用動態鏈表的contains函數來判斷元素是否包含在鏈表中。

4、連接兩個數組

int[]intArray={1,2,3,4,5};

int[]intArray2={6,7,8,9,10};

//ApacheCommonsLanglibrary

int[]combinedIntArray=ArrayUtils.addAll(intArray,intArray2);

ArrayUtils是Apache提供的數組處理類庫,其addAll方法可以很方便地將兩個數組連接成一個數組。

5、聲明一個數組內鏈

method(newString[]{"a","b","c","d","e"});

6、將數組中的元素以字符串的形式輸出

//containingtheprovidedlistofelements

//Apachecommonlang

Stringj=StringUtils.join(newString[]{"a","b","c"},",");

System.out.println(j);

//a,b,c

同樣利用StringUtils中的join方法,可以將數組中的元素以一個字符串的形式輸出。

7、將Array轉化成Set集合

Setset=newHashSet(Arrays.asList(stringArray));

System.out.println(set);

//[d,e,b,c,a]

在Java中使用Set,可以方便地將需要的類型以集合類型保存在一個變量中,主要應用在顯示列表。同樣可以先將Array轉換成List,然后再將List轉換成Set。

8、數組翻轉

int[]intArray={1,2,3,4,5};

ArrayUtils.reverse(intArray);

System.out.println(Arrays.toString(intArray));

//[5,4,3,2,1]

依然用到了萬能的ArrayUtils。

9、從數組中移除一個元素

while(!game_over)

{

foreachpossiblemove:

count_no_of_merges_for_2-tilesand4-tiles

choosethemovewithlargenumberofmerges

}

再補充一個:將一個int值轉化成byte數組

byte[]bytes=ByteBuffer.allocate(4).putInt(8).array();

for(bytet:bytes){

System.out.format("0x%x",t);

}