我正在尝试为彩票申请随机选择6个号码。然后将数字添加到数组中。当我尝试显示数组中包含的信息时,它返回[I @ 63376afa。如果我在数组外部显示randomInt,它会正确显示,但不会添加到数组中。如果我在处理for循环后尝试将randomInt添加到数组中,则会出现错误类型不匹配无法将int转换为int [],这是有道理的。
import java.util.Random;
public class PracRandom1
{
public static void main(String[] args)
{
int randomInt=0;
int[] numArray = new int[randomInt];
int[] array = new int[5];
Random randomNum = new Random();{
for (int i = 0; i <= array.length; ++i){
randomInt = 1+randomNum.nextInt(6);
System.out.println("Array Random numbers: " + numArray);
}
}}}
答案 0 :(得分:1)
结帐java.util.Arrays.toString()
。
数组没有开箱即用的非常有用的toString()
实现。
答案 1 :(得分:0)
要获得人类可读的toString()
,您必须使用Arrays.toString()
,如下所示:
System.out.println(Arrays.toString(array));
Java的toString()
用于数组是打印[
,后跟一个表示数组元素类型的字符(在您的情况下I
为int
),其次是通过@
然后是数组的“身份哈希码”(想想它就像你的“内存地址”)。
这种悲惨的状况通常被认为是java的“错误”。
有关其他“错误”的简要列表,请参阅this answer。