java 集合轉陣列

2021-07-05 20:52:51 字數 4074 閱讀 7032

寫了乙個測試例子 如下 

@test

public void enfor();

for(string str:abc)

collectionmoney=new arraylist();

money.add("rmb");

money.add("doller");

money.add("ker");

money.add("jpy");

money.add("thb");

system.out.println("money.size()---- "+money.size());

for(string str:money)*/

}system.out.println(money);

system.out.println("money.size()-----"+money.size());

system.out.println(money.hashcode());

money.toarray(abc);

for(string str:abc)}

---------------------輸出如下:

abcd

...z

money.size()---- 5

rmbdoller

kerjpy

thb[rmb, doller, ker, jpy, thb]

money.size()-----5

1517604257

集合轉換成陣列之後的陣列----rmb

集合轉換成陣列之後的陣列----doller

集合轉換成陣列之後的陣列----ker

集合轉換成陣列之後的陣列----jpy

集合轉換成陣列之後的陣列----thb

集合轉換成陣列之後的陣列----null

----------------------------由輸出內容可見:陣列長度能夠接住集合長度的情況下,  原陣列的所有元素 被刪除了。

在測試一中情況看看,例子如下:

@test

public void enfor();

collectionmoney=new arraylist();

money.add("rmb");

money.add("doller");

money.add("ker");

money.add("jpy");

money.add("thb");

system.out.println("money.size()---- "+money.size());

for(string str:money)*/

}system.out.println(money);

system.out.println("money.size()-----"+money.size());

system.out.println(money.hashcode());

money.toarray(abc);

for(string str:abc)}

------------------輸出內容如下:

money.size()---- 5

rmbdoller

kerjpy

thb[rmb, doller, ker, jpy, thb]

money.size()-----5

1517604257

集合轉換成陣列之後的陣列----a

集合轉換成陣列之後的陣列----b

集合轉換成陣列之後的陣列----c

集合轉換成陣列之後的陣列----d

--------------------------由輸出內容可見,陣列長度接不住集合長度的時候, 原陣列內容還在沒有變化。

另一實現集合到陣列的轉換方式

@test

public void enfor();

collectionmoney=new arraylist();

money.add("rmb");

money.add("doller");

money.add("ker");

money.add("jpy");

money.add("thb");

system.out.println("money.size()---- "+money.size());

for(string str:money)*/

}system.out.println(money);

system.out.println("money.size()-----"+money.size());

system.out.println(money.hashcode());

money.toarray(abc);

for(string str:abc)

string newmoney=money.toarray(new string{});

for(string str:newmoney)}

--------------輸出內容如下: 

money.size()---- 5

rmbdoller

kerjpy

thb[rmb, doller, ker, jpy, thb]

money.size()-----5

1517604257

集合轉換成陣列之後的陣列----a

集合轉換成陣列之後的陣列----b

集合轉換成陣列之後的陣列----c

集合轉換成陣列之後的陣列----d

集合轉換成陣列之後的陣列,新陣列內容:----rmb

集合轉換成陣列之後的陣列,新陣列內容:----doller

集合轉換成陣列之後的陣列,新陣列內容:----ker

集合轉換成陣列之後的陣列,新陣列內容:----jpy

集合轉換成陣列之後的陣列,新陣列內容:----thb

-----------------由輸出內容可見:這種方式新建陣列物件 接住toarray方法返回的陣列。

在這個基礎上優化一下 ,新建乙個和集合長度一樣的陣列:

@test

public void enfor();

collectionmoney=new arraylist();

money.add("rmb");

money.add("doller");

money.add("ker");

money.add("jpy");

money.add("thb");

system.out.println("money.size()---- "+money.size());

for(string str:money)*/

}system.out.println(money);

system.out.println("money.size()-----"+money.size());

system.out.println(money.hashcode());

money.toarray(abc);

for(string str:abc)

string newmoney=new string[money.size()];

money.toarray(newmoney);

for(string str:newmoney)}

-----------------------輸出如下:

money.size()---- 5

rmbdoller

kerjpy

thb[rmb, doller, ker, jpy, thb]

money.size()-----5

1517604257

集合轉換成陣列之後的陣列----a

集合轉換成陣列之後的陣列----b

集合轉換成陣列之後的陣列----c

集合轉換成陣列之後的陣列----d

集合轉換成陣列之後的陣列,新陣列內容:----rmb

集合轉換成陣列之後的陣列,新陣列內容:----doller

集合轉換成陣列之後的陣列,新陣列內容:----ker

集合轉換成陣列之後的陣列,新陣列內容:----jpy

集合轉換成陣列之後的陣列,新陣列內容:----thb

java 陣列轉list list轉陣列

string strarray new string list list arrays.aslist strarray 注意 使用工具類 arrays.aslist 把陣列轉換成list時,不能使用其修改集合相關的方法,它的 add remove clear 方法會丟擲 unsupportedope...

Java反轉陣列元素

實現陣列逆序列印 reverse array 將陣列中第乙個元素和最後乙個元素交換位置 將第二個元素和倒數第二個交換位置 以此類推,中間的元素和自己交換,等價於沒動.public class assign04 int accarr reversearray arr for int i accarr ...

java陣列與集合

陣列 同時儲存多個同型別的資料,陣列的長度是固定的 中括號都是針對陣列的 集合 儲存元素的容器,長度可變 arraylist 單列集合 hashmap集合 雙列集合,無序 存和取的順序不一致 集合 需要導包 鍵 值對,鍵具有唯一性,值可以重複 儲存引用型別的資料 int是資料型別 put 鍵 值 方...