在 Java 中迭代 TreeSet 的方法有哪些?


Treeset 是 AbstractSet 類的一個子類,並實現了 NavigableSet 介面。預設情況下,Treeset 給出了升序的輸出,它將使用 Comparable 介面對集合元素進行排序。在 Treeset 內部,我們只能新增同種型別的元素,否則它會生成 ClassCastException,因為預設情況下 TreeSet 使用 Comparable 介面。

語法

public class TreeSet extends AbstractSet<E> implements NavigableSet<E>, Cloneable, Serializable

我們可以透過兩種方式迭代 Treeset。

使用迭代器

我們可以使用迭代器介面迭代 TreeSet 的元素。

示例

import java.util.*;
public class IteratingTreeSetTest {
   public static void main(String[] args) {
      Set<String> treeSetObj = new TreeSet<String>();
      treeSetObj.add("Ramesh");
      treeSetObj.add("Adithya");
      treeSetObj.add("Jai");
      treeSetObj.add("Vamsi");
      treeSetObj.add("Chaitanya");
      Iterator<String> it = treeSetObj.iterator(); // Iterator interface
      while (it.hasNext()) {
         System.out.println(it.next());
      }
   }
}

輸出

Adithya
Chaitanya
Jai
Ramesh
Vamsi

使用 for-each 迴圈

我們可以使用 for-each 迴圈迭代 TreeSet 的元素。

示例

import java.util.*;
public class IteratingTreeSetForEachTest {
   public static void main(String[] args) {
      Set<String> treeSetObj = new TreeSet<String>();
      treeSetObj.add("India");
      treeSetObj.add("Australia");
      treeSetObj.add("West Indies");
      treeSetObj.add("South Africa");
      treeSetObj.add("England");
      for(String str : treeSetObj) { // for-each loop
         System.out.println(str);
      }
   }
}

輸出

Australia
England
India
South Africa
West Indies

更新於:2023 年 11 月 29 日

953 次瀏覽

開啟您的 職業生涯

完成課程即可獲得認證

開始學習
廣告