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


Java Arrays.toString()用法及代码示例


今天,我们将讨论在Java中将数组打印为字符串的最简单方法:Arrays.toString()方法。

如何使用Arrays.toString()方法?

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


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

变体:

  • public static String toString(boolean [] arr)
  • public static String toString(byte [] arr)
  • public static String toString(char [] arr)
  • public static String toString(double [] arr)
  • public static String toString(float [] arr)
  • public static String toString(int [] arr)
  • public static String toString(long [] arr)
  • public static String toString(Object [] arr)
  • public static String toString(short [] arr)

参数:
arr-要返回其字符串表示形式的数组

返回值:
arr的字符串表示形式

用法:
下面提到的Java代码通过示例描述了Arrays类的toString()方法的用法:

// Java program to demonstrate working of Arrays.toString() 
import java.io.*; 
import java.util.*; 
  
class GFG { 
    public static void main(String[] args) 
    { 
        // Let us create different types of arrays and 
        // print their contents using Arrays.toString() 
        boolean[] boolArr = new boolean[] { true, true, false, true }; 
        byte[] byteArr = new byte[] { 10, 20, 30 }; 
        char[] charArr = new char[] { 'g', 'e', 'e', 'k', 's' }; 
        double[] dblArr = new double[] { 1, 2, 3, 4 }; 
        float[] floatArr = new float[] { 1, 2, 3, 4 }; 
        int[] intArr = new int[] { 1, 2, 3, 4 }; 
        long[] lomgArr = new long[] { 1, 2, 3, 4 }; 
        Object[] objArr = new Object[] { 1, 2, 3, 4 }; 
        short[] shortArr = new short[] { 1, 2, 3, 4 }; 
  
        System.out.println(Arrays.toString(boolArr)); 
        System.out.println(Arrays.toString(byteArr)); 
        System.out.println(Arrays.toString(charArr)); 
        System.out.println(Arrays.toString(dblArr)); 
        System.out.println(Arrays.toString(floatArr)); 
        System.out.println(Arrays.toString(intArr)); 
        System.out.println(Arrays.toString(lomgArr)); 
        System.out.println(Arrays.toString(objArr)); 
        System.out.println(Arrays.toString(shortArr)); 
    } 
}

输出:

[true, true, false, true]
[10, 20, 30]
[g, e, e, k, s]
[1.0, 2.0, 3.0, 4.0]
[1.0, 2.0, 3.0, 4.0]
[1, 2, 3, 4]
[1, 2, 3, 4]
[1, 2, 3, 4]
[1, 2, 3, 4]

我们还可以将Arrays.toString()用于用户定义的类的对象。
由于Arrays.toString()重载了Object类的数组(存在Arrays.toString(Object [])方法)并且Object是所有类的祖先,因此我们可以将其用于任何类型的对象数组。

// Java program to demonstrate working of Arrays.toString() 
// for user defined objects. 
import java.lang.*; 
import java.util.*; 
  
// Driver class 
class Main { 
    public static void main(String[] args) 
    { 
        Student[] arr = { new Student(111, "bbbb", "london"), 
                          new Student(131, "aaaa", "nyc"), 
                          new Student(121, "cccc", "jaipur") }; 
  
        System.out.println(Arrays.toString(arr)); 
    } 
} 
  
// A class to represent a student. 
class Student { 
    int rollno; 
    String name, address; 
  
    // Constructor 
    public Student(int rollno, String name, 
                   String address) 
    { 
        this.rollno = rollno; 
        this.name = name; 
        this.address = address; 
    } 
  
    // Used to print student details in main() 
    @override
    public String toString() 
    { 
        return this.rollno + " " + this.name + " " + this.address; 
    } 
}

输出:

[111 bbbb london, 131 aaaa nyc, 121 cccc jaipur]

为什么Object.toString()不适用于数组?
在阵列上使用toString()方法可能不起作用。它将数组视为典型对象,并返回默认字符串,即,“ [”表示数组,后跟一个表示数组原始数据类型的字符,后跟一个Identity Hex Code [有关详细信息,请参见]



相关用法


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