Java Arrays.asList 不

标签 java arrays for-loop contains

我正在编写一个简单的 Java 方法。我已经实例化了要迭代的数组

int[] j = new int[8];

然后用 1 到 100 之间的随机值填充该数组。

for (int i = 0; i < j.length; i++){
        j[i] = (int)(Math.random() * 100);
}

现在我尝试迭代此循环,同时使用 Arrays.asList 在数组中找到迭代编号时替换一行。我不明白为什么下面的语句中没有发生替换。

for(int i = 1; i <= 100; i++){

    //Iterate over the array
    if(Arrays.asList(j).contains(i)){
        System.out.println(i + " Random Typo");
    }
    else{
        System.out.println(i + " I will never spam my friends again.");
    }
}

我知道我可以循环数组并进行比较,但我想让 asList.contains 方法起作用,以便数组不必迭代超过 100 次。输出打印“我再也不会向我的 friend 发送垃圾邮件了。”在每次传递时都进行替换,而不是进行替换。有人看到我的语法有错误吗?我没有任何导入错误。

最佳答案

您不能拥有原始类型的列表。

将 j 更改为

Integer [] j=new Integer[8];

关于Java Arrays.asList 不,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25591768/

相关文章:

c# - 使用 linq-to-sql 帮助进行高级数据库搜索

java - 如何在Java Spring Boot应用程序中合并两个对象?

java - 使用图像序列和数组绘制动画?

java - Jackson 使用 Linkedin Rest API 进行对象映射方法

java - 是否可以在 jtable 中调用自动行排序器

C++ 设置结构体数组中的元素 = NULL

c# - 将函数实现为 []

C if else 循环不起作用

arrays - 在 tableview 的 as 部分按日期过滤数组

python - 遍历并附加名称列表