Java 遍历一个HashSet

Java 遍历一个HashSet

我们都知道 HashSet 元素是无序的,所以被遍历的元素可以按任何顺序打印。为了对我们的HashSet进行操作,如插入、删除、更新元素,首先我们需要接触访问HashSet。下面是一些方法,我们可以通过这些方法对元素进行遍历,以执行任何类型的操作o Set元素,如下所示。

方法

  1. 使用for-each循环
  2. 使用forEach方法
  3. 使用迭代器

方法1:使用for-each循环

这是另一种数组遍历技术,就像Java 5中引入的for循环、while循环、do-while循环。它像普通的for循环一样以关键字 for 开始。你不需要声明和初始化一个循环计数器变量,而是声明一个与数组基本类型相同的变量,后面加一个冒号,然后再加上数组名称数组遍历技术,就像Java 5中引入的for循环、while循环、do-while循环。

例子

// Java program to demonstrate iteration over
// HashSet using an Enhanced for-loop
 
import java.util.*;
 
class IterationDemo {
    public static void main(String[] args)
    {
        // your code goes here
        HashSet<String> h = new HashSet<String>();
 
        // Adding elements into HashSet using add()
        h.add("Geeks");
        h.add("for");
        h.add("Geeks");
 
        // Iterating over hash set items
        for (String i : h)
            System.out.println(i);       
    }
}

输出

Geeks
for

方法2:使用流类的forEach()方法

Stream forEach(Consumer action) 为流中的每个元素执行一个动作。Stream forEach(Consumer action)是一个 终端操作 ,也就是说,它可以遍历流,产生一个结果或一个副作用。

提示: 在Java 8或以上版本中,我们可以使用forEach()方法遍历一个List或Collection。

例子

// Java program to demonstrate iteration over
// HashSet using forEach() method
 
import java.util.*;
 
class IterationDemo {
    public static void main(String[] args)
    {
        // your code goes here
        HashSet<String> h = new HashSet<String>();
 
        // Adding elements into HashSet using add()
        h.add("Geeks");
        h.add("for");
        h.add("Geeks");
 
        // Iterating over hash set items
        h.forEach(i -> System.out.println(i));
    }
}

输出

Geeks
for

方法3:使用一个迭代器

iterator()方法是用来获取这个集合中的元素的迭代器。这些元素不按特定顺序返回。下面是演示该方法的java程序。

例子

// Java program to Illustrate Traversal over HashSet
// Using an iterator
 
// Importing required classes
import java.util.*;
 
// Main class
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Creating empty HashSet by declaring object
        // of HashSet class of string type
        HashSet<String> h = new HashSet<String>();
 
        // Adding elements into HashSet
        // using add() method
        h.add("Geeks");
        h.add("for");
        h.add("Geeks");
 
        // Iterating over HashSet elements
        // using iterator
        Iterator<String> i = h.iterator();
 
        // Holds true till there is single element remaining
        // in the Set
        while (i.hasNext())
 
            // Printing the elements
            System.out.println(i.next());
    }
}

输出

Geeks
for

时间复杂度: O(n)添加n个元素

辅助空间: O(n)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程