iT邦幫忙

2026 iThome 鐵人賽

DAY 27
0
Software Development

從零開始學程式語言:Java 新手修煉記系列 第 27 篇

Day 27:Java Collection 集合物件(3)

  • 分享至 

  • xImage
  •  

本日學習:
HasMap 類別

  1. HasMap<Integer, String> hmmap = HasMap<Integer, String>();
  2. 實作 Map 類別
  3. 允許關鍵值、對應值為 null
  4. 建構子:
    • HasMap()
    • HasMap(int initialCapacity):建立一個空的物件,元素個數為 initialCapacity
    • HasMap(Map<? extends K, ? extends V>m)
  5. 以 put() 加入物件
  6. 依加入順序排列

TreeMap 類別

  1. 建構子:
    • TreeMap()
    • TreeMap(Map<? extends K, ? extends V>m)
    • TreeMap(SortedMap<? extends K, ? extends V>m)
  2. 函數:
    • K firstKey()
    • K lastKey()
    • SortedMap<K,V>subMap(K fromKey, K toKey):取得大於等於 fromKey,小於 toKey 的TreeMap 物件
    • SortedMap<K,V>tailMap(K fromKey):取得大於等於 fromKey

走訪集合物件的元素

  1. List、Map 有索引值或關鍵值,可將某個特定元素取出
  2. Set 只能刪除元素
  3. Iterator、ListIterator 可用於走訪,尊於某種規則,以不重複的方式取出所有節點
  4. by for-each 迴圈:
    • for(元素型態 迴圈控制變數:集合或陣列名稱)
    • 要與集合元素型態相同
    • 從頭開始走訪
    • 不能置換
    • 變數是區域變數

Iterator 走訪元素

  1. 適用非 Map 的集合物件
  2. 可走訪集合元素、刪除元素
  3. 函數:
    • Iteratoriterator():取得實作 Iterator 物件
    • boolean hasNext():集合中若是有下一個元素,則回傳 true
    • T next():傳回集合的下一個元素
    • void remove()
  4. Iterator itr = tset.iterator(); itr:物件名稱,tset:集合物件名稱
  5. 用統一的方式走訪不同集合裡的元素
  6. 通常搭配 while 迴圈、hasNext() 作為迴圈執行的判斷條件,於迴圈中以 next() 取得元素的內容
  7. 缺點:單向、只能讀一次

ListIterator 走訪元素

  1. 可以雙向走訪
  2. 只有 List 介面的集合才可使用
  3. 函數:
    • ListIteratorlistIterator()
    • ListIteratorlistIterator(int index)
    • void add(T o):再下一個元素前加入 o
    • boolean hasNext():集合中若是有下一個元素,則傳回 true
    • boolean hasPrevious()
    • T next()
    • int nextIndex():傳回下一個元素的索引值
    • T previous()
    • int previousIndex()
    • void remove()
    • void set(T o)
  4. ListIterator litr = llist.listIterator();
  5. next() 取得下一個元素,previous() 取得上一個元素

上一篇
Day 26:Java Collection 集合物件(2)
下一篇
Day 28:成果(1)
系列文
從零開始學程式語言:Java 新手修煉記 共 29 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言