今天就跟大家聊聊有关Arrays.deepToString()与Arrays.toString()有什么区别,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
Arrays.deepToString()主要用于数组中还有数组的情况,而Arrays.toString()则相反,对于Arrays.toString()而言,当数组中有数组时,不会打印出数组中的内容,只会以地址的形式打印出来。
package com.oovever.hutool.util; import java.util.Arrays; /** * @Author OovEver * @Date 2017/12/24 17:31 */ public class test { public static void main(String[] args) { int a[] = {1, 2, 3}; System.out.println(Arrays.toString(a)); int b[][] = {{1, 2, 3}, {4, 5, 6}}; System.out.println(Arrays.toString(b)); System.out.println(Arrays.deepToString(b)); } }
[1, 2, 3] [[I@14ae5a5, [I@7f31245a] [[1, 2, 3], [4, 5, 6]]
补充:Arrays.deepToString()解释和用法(返回指定数组“深层内容”的字符串表示形式)
public static String deepToString(Object[] a)
java.util.Arrays.deepToString()
返回指定数组“深层内容”的字符串表示形式。
如果数组包含作为元素的其他数组,则字符串表示形式包含其内容等。此方法是为了将多维数组转换字符串而设计的。
字符串表现形式: 字符串表示形式由数组的元素列表组成,括在方括号("[]")中。相邻元素用字符 ", "(逗号加空格)分隔。这些元素通过 String.valueOf(Object) 转换为字符串,除非它们是自身的数组。
import java.util.Arrays; /** * Arrays.deepToString()方法打印的是二维数组中一维数组中的值 * Arrays.toString()方法打印的是二维数组中一维数组的地址 */ public class TestDeepToString { public static void main(String[] args) { int[] array1 = {6, 6, 6}; int[] array2 = {8, 8, 8}; int[][] array3 = {array1, array2}; // int[][] array4 = {{6, 6, 6}, {8, 8, 8}}; System.out.println(Arrays.deepToString(array3)); //[[6, 6, 6], [8, 8, 8]] System.out.println(Arrays.toString(array3)); //[[I@511d50c0, [I@60e53b93] } }
[[6, 6, 6], [8, 8, 8]] [[I@511d50c0, [I@60e53b93]
看完上述内容,你们对Arrays.deepToString()与Arrays.toString()有什么区别有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。