华南俳烁实业有限公司

java

當前位置:中華考試網(wǎng) >> java >> java教程 >> 文章內(nèi)容

Java9新增的不可變集合

來源:中華考試網(wǎng)  [2020年11月18日]  【

  Java 9 版本以前,假如要創(chuàng)建一個包含 6 個元素的 Set 集合,程序需要先創(chuàng)建 Set 集合,然后調(diào)用 6 次 add() 方法向 Set 集合中添加元素。Java 9 對此進行了簡化,程序直接調(diào)用 Set、List、Map 的 of() 方法即可創(chuàng)建包含 N 個元素的不可變集合,這樣一行代碼就可創(chuàng)建包含 N 個元素的集合。

  不可變意味著程序不能向集合中添加元素,也不能從集合中刪除元素。

  如下程序示范了如何創(chuàng)建不可變集合。

  public class Java9Collection {

  public static void main(String[] args) {

  // 創(chuàng)建包含4個元素的Set集合

  Set set = Set.of("Java", "Kotlin", "Go", "Swift");

  System.out.println(set);

  // 不可變集合,下面代碼導致運行時錯誤

  // set.add("Ruby");

  // 創(chuàng)建包含4個元素的List集合

  List list = List.of(34, -25, 67, 231);

  System.out.println(list);

  // 不可變集合,下面代碼導致運行時錯誤

  // list.remove(1);

  // 創(chuàng)建包含3個key-value對的Map集合

  Map map = Map.of("語文", 89, "數(shù)學", 82, "英語", 92);

  System.out.println(map);

  填寫下面表單即可預約申請免費試聽java課程!害怕學不會?助教全程陪讀,隨時解惑!擔心就業(yè)?一地學習,可全國推薦就業(yè)!

預約申請免費聽java課程

  • 地區(qū):
  • 姓名:
  • 手機:

  // 不可變集合,下面代碼導致運行時錯誤

  // map.remove("語文");

  // 使用Map.entry()方法顯式構建key-value對

  Map map2 = Map.ofEntries(Map.entry("語文", 89), Map.entry("數(shù)學", 82), Map.entry("英語", 92));

  System.out.println(map2);

  }

  }

  上面第 4、9、14 和 19 行代碼示范了如何使用集合元素創(chuàng)建不可變集合,其中 Set、List 比較簡單,程序只要為它們的 of() 方法傳入 N 個集合元素即可創(chuàng)建 Set、List 集合。

  從上面代碼可以看出,創(chuàng)建不可變的 Map 集合有兩個方法。使用 of() 方法時只要依次傳入多個 key-value 對即可;還可使用 ofEntries() 方法,該方法可接受多個 Entry 對象,因此程序顯式使用 Map.entry() 方法來創(chuàng)建 Map.Entry 對象。

責編:fushihao

上一篇:JavaSet集合:TreeSet類

下一篇: 沒有了

  • 會計考試
  • 建筑工程
  • 職業(yè)資格
  • 醫(yī)藥考試
  • 外語考試
  • 學歷考試
北碚区| 南京市| 三门县| 邳州市| 柞水县| 北碚区| 茌平县| 荔波县| 资源县| 寿光市| 南投县| 龙岩市| 西青区| 昌乐县| 江安县| 山阴县| 盘锦市| 鹤峰县| 呈贡县| 斗六市| 湟中县| 东城区| 隆德县| 通州区| 石棉县| 修文县| 东安县| 邵武市| 鄂温| 绥江县| 宣城市| 虹口区| 云阳县| 东乌珠穆沁旗| 灵丘县| 宣恩县| 历史| 东源县| 铜川市| 仙居县| 上思县|