Java迭代遍历TreeSet的几种方法

Treeset是AbstractSet类的子类,实现NavigableSet接口。 默认情况下,TreeSet给出输出的升序,并且它将使用类似的接口来对集合元素进行排序。 在TreeSet内,我们可以添加相同类型的元素,否则它会抛出ClassCastException,因为默认情况下TreeSet 使用Comparable 接口

语法

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

我们可以通过两种方式迭代TreeSet 

使用迭代器

我们可以使用Iterator接口来迭代  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 接口
      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 循环
          System.out.println(str);
      }
   }
}

输出结果

AustraliaEngland
India
South Africa
West Indies