从 HashSet 中获取第一个或最后一个元素的Java程序
HashSet类实现了 Set 接口,由一个哈希表支持,它实际上是一个 HashMap 实例。不保证集合的迭代顺序,这意味着该类不保证元素随时间的恒定顺序。此类允许空元素。该类还为基本操作(如添加、删除、包含和大小)提供恒定的时间性能,假设散列函数将元素正确地分散在存储桶中,我们将在文章中进一步介绍。
HashSet 不保证元素的顺序随时间保持不变,这意味着当我们迭代 HashSet 时,不能保证我们得到的元素顺序与我们按顺序添加的顺序相同。所以HashSet中没有第一个或最后一个元素。但是,我们可以根据它存储元素的方式找到 HashSet 中的第一个或最后一个元素。通过简单的迭代HashSet。
方法:
- 插入、添加然后显示所需元素的幼稚方法。
- 在findFirst()和get()内置方法的帮助下使用流。
示例 1:打印 HashMap 的第一个元素和最后一个元素。
Java
// Java Program to Get First or
// Last Elements from Java HashSet
// Importing java generic libraries
import java.util.*;
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating a HashSet
HashSet set = new HashSet<>();
// Add data to Hashset
set.add(10);
set.add(20);
set.add(20);
set.add(10);
set.add(50);
set.add(40);
// Initializing first element as 0 from outside
// instead of garbage value involvement
int firstEle = 0;
// Iterate HashSet using for each loop
for (int val : set) {
firstEle = val;
break;
}
// int lastEle = 0;
// Print HashSet
System.out.println("HashSet : " + set);
// Print First element
System.out.println("First element of HashSet : "
+ firstEle);
}
}
Java
// Java code to find the first element
// in HashSet with the help of stream
// Importing generic java libraries
import java.util.*;
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating a new HashSet
HashSet set = new HashSet<>();
// Add data to Hashset
set.add(10);
set.add(20);
set.add(20);
set.add(10);
set.add(50);
set.add(40);
// Find the first element in HashSet
// using stream and findFirst method
int firstEle = set.stream().findFirst().get();
// Print HashSet
System.out.println("HashSet : " + set);
// Print First element of HashSet
System.out.println("First element of HashSet : "
+ firstEle);
}
}
输出
HashSet : [50, 20, 40, 10]
First element of HashSet : 50
方法二:使用流查找HashSet中的第一个元素,借助findFirst() 和 得到() 方法 在Java中。
句法:
set.stream().findFirst().get()
返回类型:返回HashMap的第一个元素
例外:如果 HashSet 为空get() 抛出错误(Java.util.NoSuchElementException)。
例子:
Java
// Java code to find the first element
// in HashSet with the help of stream
// Importing generic java libraries
import java.util.*;
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating a new HashSet
HashSet set = new HashSet<>();
// Add data to Hashset
set.add(10);
set.add(20);
set.add(20);
set.add(10);
set.add(50);
set.add(40);
// Find the first element in HashSet
// using stream and findFirst method
int firstEle = set.stream().findFirst().get();
// Print HashSet
System.out.println("HashSet : " + set);
// Print First element of HashSet
System.out.println("First element of HashSet : "
+ firstEle);
}
}
输出
HashSet : [50, 20, 40, 10]
First element of HashSet : 50