在 Java 中遍历 Set
本文将介绍在 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.HashSet;
import java.util.Set;
import java.util.Vector;
import java.util.Enumeration;
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
相关文章
如何在 Java 中延迟几秒钟的时间
发布时间:2023/12/17 浏览次数:217 分类:Java
-
本篇文章主要介绍如何在 Java 中制造程序延迟。本教程介绍了如何在 Java 中制造程序延时,并列举了一些示例代码来了解它。
如何在 Java 中把 Hashmap 转换为 JSON 对象
发布时间:2023/12/17 浏览次数:187 分类:Java
-
它描述了允许我们将哈希图转换为简单的 JSON 对象的方法。本文介绍了在 Java 中把 Hashmap 转换为 JSON 对象的方法。我们将看到关于创建一个 hashmap,然后将其转换为 JSON 对象的详细例子。
如何在 Java 中按值排序 Map
发布时间:2023/12/17 浏览次数:171 分类:Java
-
本文介绍了如何在 Java 中按值对 Map 进行排序。本教程介绍了如何在 Java 中按值对 Map
进行排序,并列出了一些示例代码来理解它。
如何在 Java 中打印 HashMap
发布时间:2023/12/17 浏览次数:192 分类:Java
-
本帖介绍了如何在 Java 中打印 HashMap。本教程介绍了如何在 Java 中打印 HashMap 元素,还列举了一些示例代码来理解这个主题。
在 Java 中更新 Hashmap 的值
发布时间:2023/12/17 浏览次数:146 分类:Java
-
本文介绍了如何在 Java 中更新 HashMap 中的一个值。本文介绍了如何在 Java 中使用 HashMap 类中包含的两个方法-put() 和 replace() 更新 HashMap 中的值。
Java 中的 hashmap 和 map 之间的区别
发布时间:2023/12/17 浏览次数:79 分类:Java
-
本文介绍了 Java 中的 hashmap 和 map 接口之间的区别。本教程介绍了 Java 中 Map 和 HashMap 之间的主要区别。在 Java 中,Map 是用于以键值对存储数据的接口,
在 Java 中获取用户主目录
发布时间:2023/12/17 浏览次数:218 分类:Java
-
这篇文章向你展示了如何在 Java 中获取用户主目录。本教程介绍了如何在 Java 中获取用户主目录,并列出了一些示例代码以指导你完成该主题。
Java 中 size 和 length 的区别
发布时间:2023/12/17 浏览次数:179 分类:Java
-
这篇文章教你如何知道 Java 中大小和长度之间的区别。本教程介绍了 Java 中大小和长度之间的区别。我们还列出了一些示例代码以帮助你理解该主题。
Java 中的互斥锁
发布时间:2023/12/17 浏览次数:111 分类:Java
-
了解有关 Java 中互斥锁的一切,在计算机科学领域,互斥或互斥被称为并发控制的属性。每台计算机都使用称为线程的最小程序指令序列。有一次,计算机在一个线程上工作。为了更好地理解,