Java程序:从HashSet中获取第一个或最后一个元素


Java中,HashSet是一个,它实现了Set接口。HashSet是一个唯一元素的集合,它不存储也不允许我们存储重复元素。在本节中,我们将讨论使用Java编程语言在Java中查找HashSet的第一个元素和最后一个元素的不同方法。

Java中的HashSet类使用哈希表实现。它使用哈希码从HashSet的表中快速检索数据,元素的顺序不保留,即它不按我们向集合中添加元素的顺序存储元素。我们可以执行诸如添加、删除、搜索元素的操作。由于元素不是按特定顺序存储的,因此它们是无序元素。当我们从HashSet检索元素时,我们无法预测将检索到的元素的顺序。

HashSet的基本操作

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

add() − 此方法有助于将元素添加到HashSet。它接受一个参数,基本上是存储在HashSet中的元素的类型。

hashSetObject.add(element)

remove() − 此方法有助于从HashSet中删除元素。传递给此方法的元素将从HashSet中删除。

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

clear() − 此方法有助于清除HashSet中的所有元素。

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

contains() − 此方法有助于检查作为参数传递的元素是否在HashSet中。它返回布尔值。如果元素存在,则返回true,否则返回false。

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

isEmpty() − 此方法有助于检查HashedSet是否为空。它返回布尔值。如果HashSet为空,则返回true,否则返回false。

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

语法

创建HashSet实例 − 可以使用HashSet()构造函数创建HashSet对象。

HashSet<datatype> obj= new HashSet();
Example : 
HashSet<String>  hm  = new HashSet() ; // creates a hashSet with string type.

创建ArrayList − 可以使用ArrayList()构造函数创建ArrayList对象。它用于存储同构元素。它允许重复。

ArrayList<datatype> obj = new ArrayList<>();
Example :
ArrayList<String> ls  = newArrayList() ; // creates a ArrayList with string type.

iterator() − 它是一个对象,它帮助我们迭代集合中的元素,并使用此对象上的hasNext()方法返回值。

Iterator<datatype> iteratorobjectname =CollectionObject.iterator()

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

iteraratorObject.hasNext()

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

iteraratorObject.next()

toArray() − 此方法用于将集合转换为数组。它返回一个元素数组。

collectionobject.toArray()

现在,我们将通过Java代码详细讨论如何从HashSet中查找第一个或最后一个元素。

方法一:使用iterator()方法

在这种方法中,我们首先创建一个HashSet对象,然后使用add()方法向HashSet添加一些元素。我们在集合对象上创建迭代器对象,并使用next()方法获取集合中的第一个元素并将其值存储在“first”变量中,然后我们将“last”变量初始化为零,并使用for-each循环迭代元素集合,并将元素存储在“last”变量中,最后打印“first”和“last”变量的值。

算法

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

  • 创建一个迭代器实例,并使用next()方法检索第一个元素。

  • 使用for循环迭代集合并获取最后一个元素。

  • 打印第一个和最后一个元素。

示例

在这个例子中,我们将使用iterator()方法查找HashSet中的第一个和最后一个元素。

import java.util.*;

public class Main {
   public static void main(String[] args) {
      HashSet<Integer> hm = new HashSet<>();
      hm.add(12);
      hm.add(20);
      hm.add(35);
      Iterator<Integer> iterator = hm.iterator();
      int first= iterator.next();
      int last = 0;
      for (int x : hm) {
         last = x;
      }
      System.out.println("First element of HashSet: " + first);
      System.out.println("Last element of HashSet: " + last);
   }
}

输出

First element of HashSet: 35
Last element of HashSet: 12

方法二:使用toArray()方法

在这个例子中,我们创建一个HashSet对象,并使用add()方法向HashSet添加一些元素,然后我们使用toArray()方法将HashSet转换为数组。然后访问数组的第一个和最后一个元素,然后打印它们。

算法

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

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

  • 使用索引检索数组的第一个元素和最后一个元素并打印它。

示例

在这个例子中,我们将使用‘toArray()’方法将集合转换为数组,然后我们将查找HashSet的第一个和最后一个元素。

import java.util.HashSet;

public class Main {
   public static void main(String[] args) {
      HashSet<String> hm = new HashSet<>();
      hm.add("apple");
      hm.add("banana");
      hm.add("cherry");   
      // Convert the set to an array
      String[] arr = new String[hm.size()];
      hm.toArray(arr); 
      // Find the first and last elements of the array
      String first = arr[0];
      String last = arr[arr.length - 1];
      System.out.println("First element: " + first);
      System.out.println("Last element: " + last);
   }
}

输出

First element: banana
Last element: cherry

因此,在这篇文章中,我们学习了如何使用Java中不同的方法来获取HashSet的第一个和最后一个元素。

更新于:2024年6月24日

3K+ 浏览量

启动您的职业生涯

完成课程获得认证

开始
广告