为什么我得到的是数组的地址而不是值(二维数组) 5导入java.util.*; 6. 7类矩阵{ 8//声明成员字段 9私有int[][]矩阵; 10 12公共矩阵(整数a、整数b、整数c、整数d){ 13矩阵=新整数[2][2]; 14矩阵[0][0]=a; 15矩阵[0][1]=b; 16矩阵[1][0]=c; 17矩阵[1][1]=d; 18 } 19//单位矩阵 20公共矩阵(字符i){ 21矩阵=新整数[2][2]; 22矩阵[0][0]=1; 23矩阵[0][1]=0; 24矩阵[1][0]=1; 25矩阵[1][1]=0; 26 } 27 29公共int[]toPow(int n,int[]matrix){ 30如果(n==1) 31收益矩阵; 32其他{ 33 int[][]温度=矩阵; 34表示(int i=0;i
调用时,toString(Array)应该打印出数组的内容。但是当我试图打印代码最后两行中的数组时,我得到的是地址而不是内容。有人能帮我理解为什么吗?数组。toString()只适用于一维数组。尝试在数组的行上迭代,并在每行上分别使用为什么我得到的是数组的地址而不是值(二维数组) 5导入java.util.*; 6. 7类矩阵{ 8//声明成员字段 9私有int[][]矩阵; 10 12公共矩阵(整数a、整数b、整数c、整数d){ 13矩阵=新整数[2][2]; 14矩阵[0][0]=a; 15矩阵[0][1]=b; 16矩阵[1][0]=c; 17矩阵[1][1]=d; 18 } 19//单位矩阵 20公共矩阵(字符i){ 21矩阵=新整数[2][2]; 22矩阵[0][0]=1; 23矩阵[0][1]=0; 24矩阵[1][0]=1; 25矩阵[1][1]=0; 26 } 27 29公共int[]toPow(int n,int[]matrix){ 30如果(n==1) 31收益矩阵; 32其他{ 33 int[][]温度=矩阵; 34表示(int i=0;i,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,调用时,toString(Array)应该打印出数组的内容。但是当我试图打印代码最后两行中的数组时,我得到的是地址而不是内容。有人能帮我理解为什么吗?数组。toString()只适用于一维数组。尝试在数组的行上迭代,并在每行上分别使用Arrays.toString()。Arrays.toString()仅适用于一维数组。尝试在数组的行上迭代,并在每行上分别使用Arrays.toString()。您将看到在顶级数组的每个元素上调用toString()的结果。但每个元素本身就是一个数组。改用: 您将
Arrays.toString()
。Arrays.toString()
仅适用于一维数组。尝试在数组的行上迭代,并在每行上分别使用Arrays.toString()
。您将看到在顶级数组的每个元素上调用toString()
的结果。但每个元素本身就是一个数组。改用:
您将看到在顶级数组的每个元素上调用
toString()
的结果。但每个元素本身就是一个数组。改用:
Arrays.toString(int[])支持数组(一维),而不是矩阵(二维)数组。toString(int[])支持数组(一维),而不是矩阵(二维)您可以为矩阵的每一行或每一行调用Arrays.toString()。deepToString() 输出:
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
new Test().run();
}
private void run() {
int[] v = { 1, 2, 3 };
int[][] m = { { 1, 1, 1 }, { 2, 2, 2 }, { 3, 3, 3 } };
System.out.println("Printing the array: ");
System.out.println(Arrays.toString(v));
System.out.println("Printing the line addresses: ");
System.out.println(Arrays.toString(m));
System.out.println("Priting the matrix: ");
for (int[] l : m) {
System.out.println(Arrays.toString(l));
}
System.out.println("Priting the matrix (deepToString): ");
System.out.println(Arrays.deepToString(m));
}
}
可以为矩阵的每一行调用Arrays.toString() 输出:
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
new Test().run();
}
private void run() {
int[] v = { 1, 2, 3 };
int[][] m = { { 1, 1, 1 }, { 2, 2, 2 }, { 3, 3, 3 } };
System.out.println("Printing the array: ");
System.out.println(Arrays.toString(v));
System.out.println("Printing the line addresses: ");
System.out.println(Arrays.toString(m));
System.out.println("Priting the matrix: ");
for (int[] l : m) {
System.out.println(Arrays.toString(l));
}
System.out.println("Priting the matrix (deepToString): ");
System.out.println(Arrays.deepToString(m));
}
}
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
new Test().run();
}
private void run() {
int[] v = { 1, 2, 3 };
int[][] m = { { 1, 1, 1 }, { 2, 2, 2 }, { 3, 3, 3 } };
System.out.println("Printing the array: ");
System.out.println(Arrays.toString(v));
System.out.println("Printing the line addresses: ");
System.out.println(Arrays.toString(m));
System.out.println("Priting the matrix: ");
for (int[] l : m) {
System.out.println(Arrays.toString(l));
}
System.out.println("Priting the matrix (deepToString): ");
System.out.println(Arrays.deepToString(m));
}
}
Printing the array:
[1, 2, 3]
Printing the line addresses:
[[I@3182f0db, [I@b92d342, [I@546b97fd]
Priting the matrix:
[1, 1, 1]
[2, 2, 2]
[3, 3, 3]
Priting the matrix (deepToString):
[[1, 1, 1], [2, 2, 2], [3, 3, 3]]