我是编程新手,所以我在格式化和其他方面可能会有一些错误。
我如何获得角色,'#'和'。'从我的方法checkInt到我的数组?当我运行代码时,它打印出随机整数值,但不打印转换后的整数值。 (#,。)
import java.util.Scanner;
import java.util.Random;
public class maze {
public static void main(String[] args) {
int[] row1;
int[] row2;
int[] row3;
int[] row4;
int[] row5;
//set values to arrays
row1 = new int[5];
row2 = new int[5];
row3 = new int[5];
row4 = new int[5];
row5 = new int[5];
for (int i = 0; i < 5; i++) {
row1[i] = checkInt();
row2[i] = checkInt();
row3[i] = checkInt();
row4[i] = checkInt();
row5[i] = checkInt();
}
System.out.println(java.util.Arrays.toString(row1));
System.out.println(java.util.Arrays.toString(row2));
System.out.println(java.util.Arrays.toString(row3));
System.out.println(java.util.Arrays.toString(row4));
System.out.println(java.util.Arrays.toString(row5));
}
public static int checkInt() {
Random rand1 = new Random();
int value = rand1.nextInt(100);
if (value >= 65) {
System.out.println("#");
} else {
System.out.println(".");
}
return value;
}
}
答案 0 :(得分:1)
您应该将数组更改为char
数组
char[] row1 = new char[5];`
和checkInt()
返回char
而非打印它:
public static char checkInt() {
Random rand1 = new Random();
int value = rand1.nextInt(100);
if (value >= 65) {
// Note that these are single quotes because it's a char, not a String
return '#';
} else {
return '.';
}
}
在您重新命名checkInt()
时不会有任何伤害。它并没有真正检查int。有一个笑话,计算机科学有两个难题:缓存失效和命名事物。