java - 为什么 Java 在尝试打印大随机数时会报告不匹配?
问题描述
Java 在尝试打印大数字并存储数组时报告类型不匹配异常。
我目前正在学习一些Java。我正在做的课程的一项练习要求我生成一些随机数并将它们存储在一个数组中。只要我生成整数,一切正常,我可以使用 out.print 毫无问题地打印它们。
但是,当我生成大数字并尝试打印它们时,Java 会在我有 for each 循环的行中通知类型不匹配。
package clases;
public class Arrays_3 {
public static void main (String [] args) {
long [] array_random=new long[150];
for (int i=0;i<array_random.length;i++) {
array_random[i]=(long)Math.round(Math.random()*100000) ;
}
for (long elemento:array_random) {
System.out.println(array_random[elemento]);
}
}
}
这是我在运行上面的代码后在 Eclipse 控制台上遇到的错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from long to int
at clases.Arrays_3.main(Arrays_3.java:17)
第 17 行是System.out.print
方法所在的位置。
解决方案
我猜你正在尝试打印元素。您正在循环的是值(int 类型)而不是索引(long 类型)。
for (long elemento:array_random) {
System.out.println(elemento);
}
推荐阅读
- node.js - 反应不加载任何组件
- java - 更改 ListView 高度以匹配 EditText 内容
- php - 使用 file_get_content 更新 txt 文件
- string - 解析字符串,然后将其存储为数组并在 shell 脚本上再次解析
- php - 如果发生异常,Laravel 停止队列作业
- html - 基于数据库配置的动态模板Angular
- pandas - 熊猫数据框剥离内容
- python - Python 运行版本 3.5 而不是 3.6
- magento2 - 如何在同一行中制作名字和姓氏结帐页面送货地址
- html - 当您将鼠标悬停在 p 元素的不同部分时,如何使用 CSS 使 div 元素出现?