如何通过索引从Java中的 HashSet 获取元素?
HashSet 扩展了 AbstractSet 并实现了 Set 接口。它创建了一个使用哈希表进行存储的集合。该类不保证元素随时间的顺序不变,但允许空元素。 HashSet 的底层数据结构是Hashtable。 HashSet 还实现了 Serializable 和 Cloneable 接口。
HashSet 的声明:
public class HashSet
where E represents the type of elements to be stored in the HashSet.
我们可以通过 HashSet 中的索引获取元素的三种不同方式是:
- 使用数组
- 使用 for 循环
- 使用 ArrayList
方法一:使用数组
- 导入所需的Java包Java.util
- 使用 Set 接口声明 HashSet
- 使用 add() 方法向 HashSet 添加元素
- 显示 HashSet 以确定元素的顺序
- 使用 toArray() 方法将 HashSet 转换为 Array
- 按索引访问元素。
Java
// Java Program to get HashSet elements by index using Array
// import required package - java.util
import java.util.*;
class GFG {
public static void main(String[] args)
{
// Declare HashSet using Set Interface
Set GFG = new HashSet();
// Add elements into HashSet using add()
GFG.add("Welcome");
GFG.add("To");
GFG.add("Geeks");
GFG.add("For");
GFG.add("Geek");
// Displaying HashSet
System.out.println("HashSet contains: " + GFG);
// Notice the order of elements may be different
// than insertion
// Converting HashSet to Array
String[] Geeks = GFG.toArray(new String[GFG.size()]);
// Accessing elements by index
System.out.println("Element at index 3 is: "
+ Geeks[3]);
}
}
Java
// Java Program to get elements of HashSet by index using a
// for loop
import java.util.*;
class GFG {
public static void main(String[] args)
{
// Declare HashSet using Set Interface
Set GFG = new HashSet();
// Add elements into HashSet using add()
GFG.add("Welcome");
GFG.add("To");
GFG.add("Geeks");
GFG.add("For");
GFG.add("Geek");
// Displaying HashSet
System.out.println("HashSet contains: " + GFG);
// Notice the order of elements may be different
// than insertion
// Iterator declaration
int currentIndex = 0;
// Desired Index
int desiredIndex = 3;
for (String element :GFG) {
// Implementing for loop
if (currentIndex == desiredIndex)
{
System.out.println("Element at index 3 is: "+ element);
break;
}
currentIndex++;
}
}
}
Java
// Java Program to get elements of HashSet by index using
// ArrayList
import java.util.*;
class GFG {
public static void main(String[] args)
{
// Declare HashSet using Set Interface
Set GFG = new HashSet();
// Add elements into HashSet using add()
GFG.add("Welcome");
GFG.add("To");
GFG.add("Geeks");
GFG.add("For");
GFG.add("Geek");
// Displaying HashSet
System.out.println("HashSet contains: " + GFG);
// Notice the order of elements may be different
// than insertion
// Converting HashSet to ArrayList
List list = new ArrayList(GFG);
System.out.println("Element at index 3 is: "
+ list.get(3));
}
}
输出
HashSet contains: [Geek, Geeks, For, Welcome, To]
Element at index 3 is: Welcome
方法 2:使用 for 循环
- 导入所需的包 – Java.util
- 使用 Set 接口声明 HashSet
- 使用 add() 方法向 HashSet 添加元素
- 显示 HashSet 以确定元素的顺序
- 确定所需的索引
- 实现 for 循环以按索引访问元素
Java
// Java Program to get elements of HashSet by index using a
// for loop
import java.util.*;
class GFG {
public static void main(String[] args)
{
// Declare HashSet using Set Interface
Set GFG = new HashSet();
// Add elements into HashSet using add()
GFG.add("Welcome");
GFG.add("To");
GFG.add("Geeks");
GFG.add("For");
GFG.add("Geek");
// Displaying HashSet
System.out.println("HashSet contains: " + GFG);
// Notice the order of elements may be different
// than insertion
// Iterator declaration
int currentIndex = 0;
// Desired Index
int desiredIndex = 3;
for (String element :GFG) {
// Implementing for loop
if (currentIndex == desiredIndex)
{
System.out.println("Element at index 3 is: "+ element);
break;
}
currentIndex++;
}
}
}
输出
HashSet contains: [Geek, Geeks, For, Welcome, To]
Element at index 3 is: Welcome
方法三:使用ArrayList
- 导入所需的包Java.util
- 使用 Set 接口声明 HashSet
- 使用 add() 方法向 HashSet 添加元素
- 显示 HashSet 以确定元素的顺序
- 将 HashSet 转换为 ArrayList
- 按索引访问元素
Java
// Java Program to get elements of HashSet by index using
// ArrayList
import java.util.*;
class GFG {
public static void main(String[] args)
{
// Declare HashSet using Set Interface
Set GFG = new HashSet();
// Add elements into HashSet using add()
GFG.add("Welcome");
GFG.add("To");
GFG.add("Geeks");
GFG.add("For");
GFG.add("Geek");
// Displaying HashSet
System.out.println("HashSet contains: " + GFG);
// Notice the order of elements may be different
// than insertion
// Converting HashSet to ArrayList
List list = new ArrayList(GFG);
System.out.println("Element at index 3 is: "
+ list.get(3));
}
}
输出
HashSet contains: [Geek, Geeks, For, Welcome, To]
Element at index 3 is: Welcome