在 Java 中遍历 Set
-
在 Java 中使用增强的
for
循环对Set/HashSet
进行迭代 -
在 Java 中使用枚举法迭代
Vector
-
在 Java 中通过将
Set/HashSet
转换为一个数组来迭代Set/HashSet
-
在 Java 中使用
Array
类的stream()
方法迭代Set/HashSet
本文将介绍在 Java 中如何在不使用迭代器的情况下对 Set
或 HashSet
进行迭代。迭代器用于以随机顺序返回元素。这个任务可以使用迭代器以外的各种方法来完成。
在 Java 中使用增强的 for
循环对 Set/HashSet
进行迭代
Java 中的 for-each
循环也被称为增强的 for
循环。它用于在 Java 中迭代数组和集合的元素。
在这里,我们使用 HashSet
类创建了一个名为 mySet
的 Set
,这是一个字符串元素的集合。通过调用 mySet
上的 add()
方法,我们向 mySet
添加了元素。
使用增强的 for
循环,我们可以迭代集合内的每个元素并打印出来,如代码所示。对于 mySet
中每个类型为 String
的元素 s
,我们可以对其进行迭代。注意,元素在无序集合中迭代。
import java.util.HashSet;
import java.util.Set;
public class IterateOverHashSet {
public static void main(String[] args) {
Set<String> mySet = new HashSet<>();
mySet.add("Apple");
mySet.add("Banana");
mySet.add("Mango");
for (String s : mySet) {
System.out.println("s is : " + s);
}
}
}
输出:
s is : Mango
s is : Apple
s is : Banana
在 Java 中使用枚举法迭代 Vector
Vector
实现了 List
接口,它可以帮助我们创建类似 ArrayList
类的可调整大小的数组。首先,我们使用 HashSet
类创建了一个字符串类型元素的 Set
,之后使用 add()
方法向其中添加元素。
然后将 myset
传递给 Vector
类的构造函数,然后调用 elements()
方法来枚举 Vector
的元素。
然后,我们使用 while
循环来打印,直到 Enumeration
(e
)有更多的元素。连续调用 nextElements()
方法返回该系列的连续元素。
import java.util.Enumeration;
import java.util.HashSet;
import java.util.Set;
import java.util.Vector;
public class IterateOverHashSet {
public static void main(String[] args) {
Set<String> mySet = new HashSet<>();
mySet.add("Apple");
mySet.add("Banana");
mySet.add("Mango");
Enumeration e = new Vector(mySet).elements();
while (e.hasMoreElements()) {
System.out.println(e.nextElement());
}
}
}
输出:
Mango
Apple
Banana
在 Java 中通过将 Set/HashSet
转换为一个数组来迭代 Set/HashSet
我们首先创建一个字符串类型元素的 Set
,并向 mySet
添加元素。为了对元素进行迭代,我们使用 toArray()
方法将 mySet
转换为一个数组。toArray()
方法返回一个数组,这个数组的元素与 HashSet
中的元素相同。
然后通过使用 for
循环,我们就可以循环处理新数组中的所有元素,命名为 myArray
。打印每个元素,如下面的代码所示。
import java.util.HashSet;
import java.util.Set;
public class IterateOverHashSet {
public static void main(String[] args) {
Set<String> mySet = new HashSet<>();
mySet.add("Apple");
mySet.add("Banana");
mySet.add("Mango");
String[] myArray = mySet.toArray(new String[mySet.size()]);
for (int index = 0; index < myArray.length; index++) {
System.out.println("element : " + myArray[index]);
}
}
}
输出:
element : Mango
element : Apple
element : Banana
在 Java 中使用 Array
类的 stream()
方法迭代 Set/HashSet
在下面的代码中,我们首先使用 Java 中的 HashSet
类创建一个 String
类型元素的 Set
。然后我们通过对其实例 fruits
调用 add()
方法向其添加元素。
stream()
方法返回一个顺序的集合流。我们将我们的 Set
的 String
–fruits
,转换为 stream
。之后我们用一个 lambda
表达式来显示 stream
的元素。
import java.util.HashSet;
import java.util.Set;
import java.util.stream.Stream;
public class Simple {
public static void main(String args[]) {
Set<String> fruits = new HashSet<>();
fruits.add("Apple");
fruits.add("Banana");
fruits.add("Mango");
Stream<String> stream = fruits.stream();
stream.forEach((fruit) -> System.out.println(fruit));
}
}
输出:
Apple
Mango
Banana
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn