gpt4 book ai didi

java - 使用for循环访问HashSet(Java)中的所有元素?

转载 作者:行者123 更新时间:2023-11-29 07:32:37 25 4
gpt4 key购买 nike

我把代码写成:

public class Solution {
public int[] intersection(int[] nums1, int[] nums2) {
HashSet<Integer> has1 = new HashSet(Arrays.asList(nums1));
for (int i: has1)
System.out.println(i);
return nums1;
}
}

num1: [1,2,4,2,3]
num2: [4,5,6,3]

在 for 循环中它说 java.lang.ClassCastException: [I cannot be cast to java.lang.Integer

最佳答案

你不能直接这样做,但你需要更喜欢间接的方法

int[] a = { 1, 2, 3, 4 };
Set<Integer> set = new HashSet<>();
for (int value : a) {
set.add(value);
}
for (Integer i : set) {
System.out.println(i);
}

使用 Java 8

 1) Set<Integer> newSet = IntStream.of(a).boxed().collect(Collectors.toSet());//recomended

2) IntStream.of(a).boxed().forEach(i-> System.out.println(i)); //applicable

这里第一个 foreach 对你来说就足够了,如果你想按组进行,则使用第二个 for 循环

关于java - 使用for循环访问HashSet(Java)中的所有元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39950924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com