How to convert an Array to a Set in Java(如何在 Java 中将数组转换为集合)
问题描述
我想在 Java 中将数组转换为 Set.有一些明显的方法可以做到这一点(即使用循环),但我想要一些更整洁的方法,比如:
I would like to convert an array to a Set in Java. There are some obvious ways of doing this (i.e. with a loop) but I would like something a bit neater, something like:
java.util.Arrays.asList(Object[] a);
有什么想法吗?
推荐答案
像这样:
Set<T> mySet = new HashSet<>(Arrays.asList(someArray));
在 Java 9+ 中,如果不可修改的集合是可以的:
In Java 9+, if unmodifiable set is ok:
Set<T> mySet = Set.of(someArray);
在 Java 10+ 中,泛型类型参数可以从数组组件类型中推断出来:
In Java 10+, the generic type parameter can be inferred from the arrays component type:
var mySet = Set.of(someArray);
小心
Set.of 抛出 IllegalArgumentException - 如果有任何重复someArray 中的元素.查看更多详细信息:https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html#of(E...)
Set.of throws IllegalArgumentException - if there are any duplicate elements in someArray. See more details: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html#of(E...)
这篇关于如何在 Java 中将数组转换为集合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在 Java 中将数组转换为集合
基础教程推荐
- FirebaseListAdapter 不推送聊天应用程序的单个项目 - Firebase-Ui 3.1 2022-01-01
- 无法使用修饰符“public final"访问 java.util.Ha 2022-01-01
- 减少 JVM 暂停时间 >1 秒使用 UseConcMarkSweepGC 2022-01-01
- “未找到匹配项"使用 matcher 的 group 方法时 2022-01-01
- 在 Libgdx 中处理屏幕的正确方法 2022-01-01
- 设置 bean 时出现 Nullpointerexception 2022-01-01
- Java Keytool 导入证书后出错,"keytool error: java.io.FileNotFoundException &拒绝访问" 2022-01-01
- 降序排序:Java Map 2022-01-01
- 如何使用 Java 创建 X509 证书? 2022-01-01
- Java:带有char数组的println给出乱码 2022-01-01