[精讚] [會員登入]
699

Arrays.asList 後想再add出現 UnsupportedOperationException

這個問題真是搞死我了 List<String> fruits = Arrays.asList("a

分享此文連結 //n.sfs.tw/13240

分享連結 Arrays.asList 後想再add出現 UnsupportedOperationException@igogo
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-24 09:17:23 最後編修
2019-04-10 20:42:41 By igogo
 

 

這個問題真是搞死我了

 

 List<String> fruits = Arrays.asList("apple", "orange");
 fruits.forEach(fruit-> System.out.println(fruit));

原本這樣過得好好的,誰知客人想再多點

所以我很直覺的操作

fruits.add("water");

杯具就發生了

Caused by: java.lang.UnsupportedOperationException: null

搞了半天, 才看到這一句, 上網查了一下

原來是Arrays.asList() 回傳是固定值  不能再增刪

https://stackoverflow.com/questions/30174623/arrays-aslist-give-unsupportedoperationexception

但是客人喜歡怎麼辦? 改這樣處理

List<String> fruits = new ArrayList<>();
Arrays.asList("apple", "orange").forEach(fruit->fruits.add(fruit));
fruits.add("water");

fruits.forEach(fruit-> System.out.println(fruit));

 

END

你可能感興趣的文章

keycloak 透過java client lib新增user 使用keycloak-admin-client lib maven <dependency> <gro

停止多執行緒 利用主程式呼叫多執行緒時, 要怎麼停止正在執行的多執行緒

spring boot 使用jdbc連接mariadb spring boot, mariadb, jdbc, rowmapper

Arrays.asList 後想再add出現 UnsupportedOperationException 這個問題真是搞死我了 List<String> fruits = Arrays.asList("a

Spring Boot Maven wrappers maven, mvnw, build command

刪除資料夾內的檔案 lambda 一行文 Arrays.stream(new File("/folder/path").

隨機好文

centos 7 移机出現 dracut-initqueue timeout centos 7 移机出現 dracut-initqueue timeout 處理

vim 特定範圍行數開頭加上# 註解 vim 特定範圍行數開頭加上# 註解

ArrayList 想移除特定值 想移出water, 使用lambda 的方式如下 List<String> fruits = new Arr

臺中市雲端校務系統與Windows AD帳號整合(2) 安裝Active Directory網域服務

[scratch2] 分數排名 在清單中隨机產生5名學生的考試分數, 再利用另一個清單排名 想法, 分數愈高者排名愈好, 例如名次是第5名, 那分數是最