读书人

初学者 怎么用 tostring 打印二维数组

发布时间: 2013-04-20 19:43:01 作者: rapoo

菜鸟求助: 如何用 tostring 打印二维数组
本人java菜鸟写了一个程序生成随机的二维数组,因为某些原因需要打印所生成的二维数组查看是否符合我的要求
现在我在测试代码(即 ‘public static void main(String[] args) {}’)中只能打印出一串内存地址
请问可以仅通过改写测试代码来打印整个数组么?

谢谢


import java.util.Arrays;


public class random_generating {
/*
* 测试代码
*/
public static void main(String[] args) {
random_generating ra = new random_generating();
System.out.println(Arrays.toString(ra.getRandomArray(10)));
}

/**
* 随机数发生器
* 0 <= Math.random() < 1
*
* @return 1至10之间的随机整数
*/
private int random() {
return (int) (10 * Math.random() + 1);
}

/**
* 将新获得的随机数与已产生的其它随机数相比较,若有重复数据,则丢弃,并重来一遍;
* 否则,将新数存入数组。
*
* @param i 数组的大小
* @return 随机数组
*/
public int[][] getRandomArray(int i) {
int[][] a = new int[i][i];// a 随机数数组
int x = 0;
int y = 0;
while(x < i){
a[x][i-1] = x+1;
y = 0;
while(y < i-1){

int temp = random();
if (y == 0){
a[x][y] = temp;
}else{
for (int n = 0; n < y; n++) { // n 遍历已产生的随机数
if (temp == a[x][n]) {
temp = random();
n = -1;
}
}
a[x][y] = temp;
}

y++;
}
x++;
}

return a;
}


} 测试 二维数组
[解决办法]

引用:
我去…………deeptostring就可以了……我真傻……

自己编写一个toString的方法或者命名为despcript等,方法内进行双重循环
[解决办法]
JDK提供的自身方法应该比我们自己编写的方法,考虑要周到很多哈
[解决办法]
引用:
我去…………deeptostring就可以了……我真傻……



8错,是个好方法
LZ还要注意类名规范,类名首字母大写。
[解决办法]
以解决 蹭点分
[解决办法]
重写toString方法

读书人网 >J2SE开发

热点推荐