linkedhashset是java collection framework的一个类,它实现了set接口并扩展了hashset类。它是一个链表类型的集合类。它按照插入的顺序存储和返回对象。从 linkedhashset 集合中查找最大和最小元素是考试甚至面试中经常被问到的常见任务之一。在本文中,我们将探讨执行给定任务的几种方法。
从 linkedhashset 获取最小和最大元素的程序要从 linkedhashset 集合中查找最大和最小元素,我们将使用以下方法:
通过迭代 linkedhashset
通过将 linkedhashset 转换为 treeset
通过使用 min() 和 max() 方法
让我们一一讨论。
使用迭代借助 for-each 循环,我们可以迭代 linkedhashset 集合的元素来获取最大和最小元素。
示例 1以下示例演示了 for-each 循环从 linkedhashset 中查找最大和最小元素的实际实现。
方法我们的第一步是导入“java.util”包,以便我们可以使用 linkedhashset 类的功能。
然后,创建一个 linkedhashset 集合并使用内置方法“add()”存储一些元素。
初始化两个integer类型的变量来存储最大和最小元素。
现在,创建一个 for-each 并在其中定义两个 if 块。第一个 if 块将检查最小元素,第二个 if 块将检查最大元素。
最后打印结果并退出。
import java.util.*;public class minmax { public static void main(string[] args) { // creating a linkedhashset linkedhashset<integer> lhset = new linkedhashset<>(); // adding elements to the set lhset.add(57); lhset.add(68); lhset.add(79); lhset.add(88); lhset.add(95); // to store the maximum and minimum element integer minelem = null; integer maxelem = null; // using for-each loop to find minimum and maximum elements for (integer element : lhset) { // checking minimum element if (minelem == null || element < minelem) { minelem = element; } // checking maximum element if (maxelem == null || element> maxelem) { maxelem = element; } } system.out.println(list of elements from linkedhashset: + lhset); system.out.println(the minimum element from linkedhashset: + minelem); system.out.println(the maximum element from linkedhashset: + maxelem); }}
输出list of elements from linkedhashset: [57, 68, 79, 88, 95]the minimum element from linkedhashset: 57the maximum element from linkedhashset: 95
使用树集treeset也是java集合框架的一个类,它实现了navigableset接口。它将集合的元素存储在树结构中,并以排序的方式存储,这使得它成为从 linkedhashset 中检索最大和最小元素的最佳选择。
示例 2在下面的示例中,我们将使用 treeset 从 linkedhashset 中获取最小和最大元素。
方法按照上一个示例的前两个步骤进行操作。
然后,将 linkedhashset 集合转换为 treeset,使第一个元素变为最小,最后一个元素变为最大。
现在,使用内置方法“first()”获取最小元素,使用“last()”获取最大元素。
import java.util.*;public class minmax { public static void main(string[] args) { // creating a linkedhashset linkedhashset<integer> lhset = new linkedhashset<>(); // adding elements to the set lhset.add(57); lhset.add(68); lhset.add(79); lhset.add(88); lhset.add(95); system.out.println(list of elements from linkedhashset: + lhset); // converting linkedhashset to treeset treeset<integer> newtree = new treeset<>(lhset); // getting the minimum element system.out.println(the minimum element from linkedhashset: + newtree.first()); // getting the maximum element system.out.println(the maximum element from linkedhashset: + newtree.last()); }}
输出list of elements from linkedhashset: [57, 68, 79, 88, 95]the minimum element from linkedhashset: 57the maximum element from linkedhashset: 95
使用 min() 和 max() 方法从 linkedhashset 获取最小和最大元素的一种简单方法是使用内置方法“min()”和“max()”。 “min()”方法返回 linkedhashset 中的最小元素,“max()”返回最大元素。请注意,这两种方法都与“集合”一起使用。
示例 3在下面的示例中,我们将使用“min()”和“max()”方法来查找其最小和最大元素,而不是迭代和转换 linkedhashset 集合。
import java.util.*;public class minmax { public static void main(string[] args) { // creating a linkedhashset linkedhashset<integer> lhset = new linkedhashset<>(); // adding elements to the set lhset.add(57); lhset.add(68); lhset.add(79); lhset.add(88); lhset.add(95); system.out.println(list of elements from linkedhashset: + lhset); // getting the minimum element system.out.println(the minimum element from linkedhashset: + collections.min(lhset)); // getting the maximum element system.out.println(the maximum element from linkedhashset: + collections.max(lhset)); }}
输出list of elements from linkedhashset: [57, 68, 79, 88, 95]the minimum element from linkedhashset: 57the maximum element from linkedhashset: 95
结论本文首先介绍了 linkedhashset,在下一节中,我们讨论了从 linkedhashset 中查找最小和最大元素的三种方法。此外,我们还了解了 treeset 的基础知识和 java 集合框架的一些内置方法,包括“min()”、“max()”、“first()”和“last()”。
以上就是如何在java中从linkedhashset中找到最小或最大的元素?的详细内容。
