检查整数是否在数组中Java不会返回预期值
我在网上找了很多地方,似乎都给了我相同的解决方案。所以很明显,我犯了一些我看不见的愚蠢的错误。谁能给我指一下正确的方向吗。谢谢你的帮忙 这是我的密码:检查整数是否在数组中Java不会返回预期值,java,arrays,Java,Arrays,我在网上找了很多地方,似乎都给了我相同的解决方案。所以很明显,我犯了一些我看不见的愚蠢的错误。谁能给我指一下正确的方向吗。谢谢你的帮忙 这是我的密码: import java.util.Arrays; public class Solution { public static void main(String[] args) { int[] outcomes = {1, 2, 3, 4, 5, 6}; int count = 0;
import java.util.Arrays;
public class Solution {
public static void main(String[] args) {
int[] outcomes = {1, 2, 3, 4, 5, 6};
int count = 0;
for(int y = 1; y<=6; y++){
if(Arrays.asList(outcomes).contains(y)){
count++;
System.out.println("outcomes contains "+ y);
}
}
System.out.println(count);
}
导入java.util.array;
公共类解决方案{
公共静态void main(字符串[]args){
int[]结果={1,2,3,4,5,6};
整数计数=0;
对于(int y=1;y
返回单个元素列表。其中一个元素是您传入的int[]
如果你改变声明
int[] outcomes
到
您将得到预期的结果。代码中有两件事需要更正:
将int[]更改为Integer[](如上一个答案中所建议的Marko Topolnik)
在for循环之前移动Arrays.asList。现在数组转换为list 6次
更改后,代码将如下所示:
public static void main(String[] args) {
Integer[] outcomes = {1, 2, 3, 4, 5, 6};
List outcomesList = Arrays.asList(outcomes);
int count = 0;
for(int y = 1; y<=6; y++){
if(outcomesList.contains(y)){
count++;
System.out.println("outcomes contains "+ y);
}
}
System.out.println(count);
}
publicstaticvoidmain(字符串[]args){
整数[]结果={1,2,3,4,5,6};
List outcomesList=Arrays.asList(结果);
整数计数=0;
对于(int y=1;这类似于
Integer[] outcomes
public static void main(String[] args) {
Integer[] outcomes = {1, 2, 3, 4, 5, 6};
List outcomesList = Arrays.asList(outcomes);
int count = 0;
for(int y = 1; y<=6; y++){
if(outcomesList.contains(y)){
count++;
System.out.println("outcomes contains "+ y);
}
}
System.out.println(count);
}