我有一个 int 数组:
int[] a = {1, 2, 3};
我需要一个类型的集合:
Set<Integer> s;
如果我执行以下操作:
s = new HashSet(Arrays.asList(a));
当然,它认为我的意思是:
List<int[]>
而我的意思是:
List<Integer>
这是因为 int 是一个原语。如果我使用了字符串,一切都会起作用:
Set<String> s = new HashSet<String>(
Arrays.asList(new String[] { "1", "2", "3" }));
如何轻松、正确、简洁地从:
A) int[] a...
到
B) Integer[] a ...
谢谢!
最佳答案
使用流:
// int[] nums = {1,2,3,4,5}
Set<Integer> set = Arrays.stream(nums).boxed().collect(Collectors.toSet())
关于Java int[] 数组到 HashSet<Integer>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12030661/