導航:首頁 > 編程語言 > java數組轉換list

java數組轉換list

發布時間:2024-02-27 10:52:32

java/ANDROID 數組轉換為LIST

String[][] datas = {{"aaa","aa1","aa11"},{"bbb","bb1","bb11"},{"ccc","cc1","cc11"},
{"aaa","aa2","aa22"},{"bbb","bb2","bb22"},{"aaa","aa3","aa33"},
{"bbb","bb3","bb33"}};

Map<String , DetailModel> map = new HashMap<String , DetailModel>();
for (String[] strings : datas) {

DetailModel detail = new DetailModel();

detail.setPron(strings[0]);

List<MeanPhrase> li = new ArrayList<MeanPhrase>();
MeanPhrase mean = new MeanPhrase();
mean.setMean(strings[1]);
mean.setPhrase(strings[2]);
li.add(mean);

detail.setMpList(li);

//如果已存在相同的key,如aaa,則在key對應的對象的list中增加元素
if(map.containsKey(detail.getPron())){
map.get(detail.getPron()).getMpList().addAll(li);
}else{//否則直接新增
map.put(detail.getPron(), detail);
}
}
//將map轉為list
List<DetailModel> resultList = new ArrayList<DetailModel>(map.values());

for (DetailModel detailModel : resultList) {
System.out.println(detailModel);
}
//輸出map中的值以及分組結果記錄數
System.out.println("======================================");
Set<String> keySet = map.keySet();
for (String string : keySet) {
System.out.println(string+":"+map.get(string).getPron()+":"+map.get(string).getMpList().size());
}

控制台輸出結果:
DetailModel [pron=aaa, mpList=[MeanPhrase [mean=aa1, phrase=aa11], MeanPhrase [mean=aa2, phrase=aa22], MeanPhrase [mean=aa3, phrase=aa33]]]
DetailModel [pron=ccc, mpList=[MeanPhrase [mean=cc1, phrase=cc11]]]
DetailModel [pron=bbb, mpList=[MeanPhrase [mean=bb1, phrase=bb11], MeanPhrase [mean=bb2, phrase=bb22], MeanPhrase [mean=bb3, phrase=bb33]]]
======================================
aaa:aaa:3
ccc:ccc:1
bbb:bbb:3

注意:DetailModel [pron=ccc, mpList=[MeanPhrase [mean=cc1, phrase=cc11]]]輸出這樣的形式是因為我實體類重寫了toString()方法的原因,你那不重寫的話輸出的應該只是對象地址。

Ⅱ java中數組如何轉換成List

//小例子
//這里注意的是,不能是基本類型,必須是包裝類Byte[]可以。
publicclassDemo{
publicstaticvoidmain(String[]args)throwsException{
String[]arr={"asd","sd","df"};
Listlist=Arrays.asList(arr);
System.out.println(list);
}
}

Ⅲ Java中有將二維數組轉化為二維的List的方法嗎即ArrayList<ArrayList<Object>>的形式

沒有,二維數組那就用循環遍歷吧。

publicstaticvoidmain(String[]args)//NOCHECKSTYLE
{

intm=4;
intn=5;
Integerarray[][]=newInteger[m][n];
List<Integer[]>list_array=Arrays.asList(array);
List<List<Integer>>list_integer=newArrayList<List<Integer>>();
for(inti=0;i<list_array.size();i++)
{
list_integer.add(Arrays.asList(list_array.get(i)));
}

for(List<Integer>innerList:list_integer)
{
for(Integervalue:innerList)
{
System.out.print(value+"");
}
System.out.println();
}
}
閱讀全文

與java數組轉換list相關的資料

熱點內容
iturns下載的app在哪裡 瀏覽:637
雲起書院App在哪裡 瀏覽:612
怎麼對hex文件進行加密 瀏覽:282
pdf少年時 瀏覽:951
兩個同名文件夾同步 瀏覽:628
拍照文件夾哪個好用 瀏覽:87
文件夾和書包 瀏覽:508
解壓歸檔拿登記證 瀏覽:221
去體驗解壓房 瀏覽:611
單片機一鍵中斷響應 瀏覽:644
唐浩明pdf 瀏覽:842
程序員土木 瀏覽:71
android如何與web伺服器交互 瀏覽:607
蘋果小風扇app怎麼下 瀏覽:955
杭州it程序員對身體好不好 瀏覽:535
高新區編程加盟找哪家 瀏覽:31
伺服器什麼樣的好賣 瀏覽:150
單片機原理及應用第二版例題答案 瀏覽:970
base64encoderjava 瀏覽:492
linux視頻轉換 瀏覽:704