Java 从LinkedHashSet按索引获取元素

Java 从LinkedHashSet按索引获取元素

LinkedHashSet 是Java提供的一个类,它实现了Set接口。LinkedHashSet是通过哈希表和链表实现的,因此它比HashSet更高效,同时还保持元素的顺序。当你需要一个保持顺序且不允许重复的集合时,它非常有用。在本节中,我们将讨论从LinkedHashset按索引获取元素的不同方法。

LinkedHashSet是什么

LinkedHashSet是一种集合,它是HashSet集合和LinkedList集合的组合。HashSet是一个无序的集合,并且不允许重复元素。LinkedList存储重复元素,并且是有序的集合,即按照添加元素的顺序存储元素。至于LinkedHashSet,它既有HashSet和LinkedList的特点,它按照添加元素的方式存储元素,即保持顺序并且不允许重复。现在,让我们看一下可以在LinkedHashSet上执行的一些基本操作。

LinkedHashSet的基本操作

在这里,我们将讨论使用Java LinkedHashSet类提供的内置方法在LinkedHashSet上执行的基本操作。

add() - 这个方法用于向LinkedHashSet添加元素。它接受一个参数,即存储在LinkedHashSet中的元素的类型。

linkedHashSetObject.add(element)

remove() − 这个方法帮助从LinkedHashSet中删除元素。传递给这个方法的元素将从LinkedHashSet中移除。

set.remove("b"); // removes "b" from the set

clear() - 这个方法用于清除 LinkedHashSet 中的所有元素。

set.clear(); // removes all elements from set

contains() - 这个方法用于检查作为参数传递的元素是否存在于 LinkedHashSet 中。它返回一个布尔值。如果元素存在,则返回 true,否则返回 false。

boolean val = set.contains('b'); // checks 'b' is present and returns boolean value.

isEmpty() − 此方法用于检查LinkedHashSet是否为空。它返回布尔值。如果hashset为空,则返回true,否则返回false。

boolean val = set.isEmpty(); // checks hashSet conatians elements or not

使用的语法

创建LinkedHashSet的实例

LinkedHashSet<datatype> set = new LinkedHashSet<>();

iterator() − 它遍历Linkedhashset并返回值。

Iterator<datatype> iteratorobjectname = setobject.iterator()

hasNext() − 该方法用于检查集合中是否存在下一个元素。它是由 Java 中的迭代器接口提供的。它是在迭代器对象上调用的。

iteraratorObject.hasNext()

next() − 这个方法帮助我们返回集合中的下一个元素。它由Java中的Iterator接口提供。它在迭代器对象上被调用。

iteraratorObject.next()

toArray( − 该方法用于将集合转换为数组。它返回一个由元素组成的数组。

collectionobject.toArray()

现在,我们将通过Java代码详细讨论如何按索引从LinkedHashSet中获取元素。

方法一:使用iterator()方法

  • 创建一个LinkedHashSet实例,并使用add()方法向集合中添加元素。

  • 声明一个索引变量,并初始化为零。

  • 创建一个迭代器实例,并使用hasNext()方法检查集合中是否有要读取的元素。

  • 然后使用while循环迭代LinkedHashSet,并使用Next()方法访问元素。

  • 使用if条件匹配索引等于2的条件,并打印元素。

示例

在这个示例中,我们创建了一个LinkedHashset对象,并使用add()方法向集合中添加了一些元素。然后我们创建一个迭代器对象,并初始化一个’inde’变量,并使用while循环遍历集合并增加索引值,如果索引值达到2,则打印元素。

import java.util.LinkedHashSet;
import java.util.Iterator;

public class Main {
   public static void main(String[] args) {
      LinkedHashSet<String> set = new LinkedHashSet<>();
      set.add("Hibiscus");
      set.add("Lily");
      set.add("Papaya");
      set.add("Orange");
      set.add("Kiwi");
      Iterator<String> it = set.iterator();
      int index = 0;
      while (it.hasNext()) {
         String x = it.next();
         if (index == 2) {
            System.out.println("Element: "+x);
            break;
         }
         index++;
      }
   }
}

输出

Element : Papaya

方法二:使用toArray()方法

  • 创建一个LinkedHashSet实例并使用add()方法向集合中添加元素。

  • 使用toArray()方法将集合转换为数组。

  • 根据索引从数组中检索元素并打印它。

示例

在这个示例中,我们创建一个LinkedHashSet对象,然后向集合中添加一些元素。然后,我们使用’toArray()’方法将集合转换为数组,然后通过访问数组使用索引打印值。

import java.util.LinkedHashSet;

public class Main {
   public static void main(String[] args) {
      LinkedHashSet<String> set = new LinkedHashSet<>();
      set.add("Hibiscus");
      set.add("Lily");
      set.add("Papaya");
      set.add("Orange");
      set.add("Kiwi");
      Object[] elements = set.toArray();
      int index=2;
      System.out.println("Element is: " + elements[index]);
      System.out.println("Element is: " + elements[4]);
   }
}

输出

Element is: Papaya
Element is: Kiwi

因此,在本文中,我们讨论了使用Java编程语言从LinkedHashSet中按索引获取元素的不同方法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程