Java Arrays.deepToString的意思
答案:1 悬赏:70 手机版
解决时间 2021-02-10 08:19
- 提问者网友:人傍凄凉立暮秋
- 2021-02-09 17:14
Java Arrays.deepToString的意思
最佳答案
- 五星知识达人网友:上分大魔王
- 2021-02-09 18:21
array.deepXXX()方法适用于数组中含有另一个数组的情况:
Array.toString方法当接受的数组中还有数组时打印出的仅是该内嵌数组的名字,Array.deepToString方法会将内嵌数组的内容也打印出来,不管数组内嵌多少层,都会循环递归到最内层的数据.另外,当数组中的数组有死循环般的引用时,也有相应的保护机制防止死循环
deepToString方法主要用于多位数组 而toSring不能用在多维数组中 我这个给你举个例子吧
public class Test2 {
public static void main(String[] args) {
String[][] b = new String[3][4];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
b[i][j] = "A" + j;
}
} // 打印 content 和content1来看有什么不同 //通过打印可知content 的元素都被打印出来
// //形如[[A0,A1,A2,A3],[A0,A1,A2,A3],[A0,A1,A2,A3]]
// //而content1的则是一堆乱码
String content = Arrays.deepToString(b);
System.out.println("Hello World!: " + content);
String content1 = Arrays.toString(b);
System.out.println("Hello World!: " + content1);
}
}
如果将上面的 String content 1= Arrays.toString(b[1]);则toString能正确显示 toString()方法用来返回指定数组内容的字符串表示形式,而deepToString()返回指定数组深层内容的字符串(即多维数组)表示形式,deepEquals()方法也是为了解决equals() 不能解决深层的嵌套数组的问题。
Array.toString方法当接受的数组中还有数组时打印出的仅是该内嵌数组的名字,Array.deepToString方法会将内嵌数组的内容也打印出来,不管数组内嵌多少层,都会循环递归到最内层的数据.另外,当数组中的数组有死循环般的引用时,也有相应的保护机制防止死循环
deepToString方法主要用于多位数组 而toSring不能用在多维数组中 我这个给你举个例子吧
public class Test2 {
public static void main(String[] args) {
String[][] b = new String[3][4];
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
b[i][j] = "A" + j;
}
} // 打印 content 和content1来看有什么不同 //通过打印可知content 的元素都被打印出来
// //形如[[A0,A1,A2,A3],[A0,A1,A2,A3],[A0,A1,A2,A3]]
// //而content1的则是一堆乱码
String content = Arrays.deepToString(b);
System.out.println("Hello World!: " + content);
String content1 = Arrays.toString(b);
System.out.println("Hello World!: " + content1);
}
}
如果将上面的 String content 1= Arrays.toString(b[1]);则toString能正确显示 toString()方法用来返回指定数组内容的字符串表示形式,而deepToString()返回指定数组深层内容的字符串(即多维数组)表示形式,deepEquals()方法也是为了解决equals() 不能解决深层的嵌套数组的问题。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯