当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Arrays.toString()和Arrays.deepToString()的区别用法及代码示例


Arrays类的deepToString()方法返回指定Object数组的深层内容的字符串表示形式。与数组不同。 toString(),如果该数组包含其他数组作为元素,则字符串表示形式包括其内容,依此类推。

Arrays.toString():返回指定数组内容的字符串表示形式。字符串表示形式由数组元素列表组成,并用方括号(“[]”)括起来。相邻元素之间用字符“,”(逗号后跟空格)分隔。如果a为null,则返回“null”。

对于对象数组,如果该数组包含其他数组作为元素,则它们将从Object继承的Object.toString()方法转换为字符串,该方法描述其标识而不是其内容。

  • 参数:要返回其字符串表示形式的数组。
  • 返回值:数组的字符串表示形式。

Arrays.deepToString():java.util.Arrays.deepToString(Object [])方法是java.util.Arrays类方法。返回指定数组的“deep contents”的字符串表示形式。如果数组包含其他数组作为元素,则字符串表示形式包含其内容,依此类推。此方法旨在将多维数组转换为字符串。简单的toString()方法适用于简单数组,但不适用于多维数组。此方法旨在将多维数组转换为字符串。

用法:



public static String deepToString(Object[] arr)

arr - An array whose string representation is needed

This function returns string representation of arr[]. It returns “null”   if the specified array is null.

Java中Arrays.toString()和Arrays.toDeepString()之间的差异

Arrays.toString()

Arrays.deepToString()

我们在Java中使用Arrays.toString()来获取Object的String表示形式 我们使用Arrays.deepToString()方法获取特定数组的深层内容的字符串表示形式。
我们广泛使用Arrays.toString()返回单个维度Array的String()表示形式。 我们可以使用Arrays.deepToString()方法返回单个维度和multi-dimension数组的String表示形式。
如果数组包含其他数组作为元素,则字符串表示形式不包含其内容,依此类推。 如果数组包含其他数组作为元素,则字符串表示形式包含其内容,依此类推。
我们不使用Arrays.toString()方法返回multi-Dimension数组的字符串表示形式。 我们可以使用Arrays.deepToString()方法返回multi-dimension数组的字符串表示形式。
Arrays.toString()处理图元数组。 Arrays.deepToString()在基本体上不起作用。

以下是Arrays.toString()和Arrays.deepToString()的图示:

1.整数的一维数组。

Java

// Java program to show the usage of 
// Arrays.toString() and Arrays.deepToString() 
  
import java.io.*; 
import java.util.*; 
  
class GFG { 
    public static void main(String[] args) 
    { 
        Integer[] a = { 1, 2, 3, 4, 5 }; 
        System.out.println("Using Arrays.toString():"
                           + Arrays.toString(a)); 
  
        System.out.println("Using Arrays.deepToString():"
                           + Arrays.deepToString(a)); 
    } 
}
输出
Using Arrays.toString():[1, 2, 3, 4, 5]
Using Arrays.deepToString():[1, 2, 3, 4, 5]

2.仅维Array of Primitive(int),仅Arrays.toString()在其中工作。

Java

// Java program to show the usage of 
// Arrays.toString() and Arrays.deepToString() 
  
import java.io.*; 
import java.util.*; 
  
class GFG { 
    public static void main(String[] args) 
    { 
  
        int[] a = { 1, 2, 3, 4, 5 }; 
        System.out.println("Using Arrays.toString():"
                           + Arrays.toString(a)); 
    } 
}
输出
Using Arrays.toString():[1, 2, 3, 4, 5]

3. Multi-Dimension阵列:

Java

// Java program to show the usage of  
// Arrays.toString() and Arrays.deepToString() 
  
import java.io.*; 
import java.util.*; 
  
class GFG { 
    public static void main(String[] args) 
    { 
        Integer[] a1 = { 1, 2, 3, 4, 5 }; 
        Integer[] a2 = { 6, 7, 8, 9, 10 }; 
        Integer[][] multi = { a1, a2 }; 
        
        System.out.println("Using Arrays.toString():"
                           + Arrays.toString(multi)); 
        
        System.out.println("Using Arrays.deepToString():"
                           + Arrays.deepToString(multi)); 
    } 
}
输出
Using Arrays.toString():[[Ljava.lang.Integer;@3d075dc0, [Ljava.lang.Integer;@214c265e]
Using Arrays.deepToString():[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]

注意读者!现在不要停止学习。以student-friendly的价格获得Java和Java集合基础知识课程中所有重要的Java Foundation和Collections概念,并为行业做好准备。




相关用法


注:本文由纯净天空筛选整理自sambhavshrivastava20大神的英文原创作品 Difference Between Arrays.toString() and Arrays.deepToString() in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。