今天,我們將討論在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 [有關詳細信息,請參見]
相關用法
- Java Java lang.Long.numberOfLeadingZeros()用法及代碼示例
- Java Java.util.Collections.rotate()用法及代碼示例
- Java Java.util.concurrent.RecursiveTask用法及代碼示例
- Java Java lang.Long.lowestOneBit()用法及代碼示例
- Java Java.util.Collections.disjoint()用法及代碼示例
- Java Java lang.Long.numberOfTrailingZeros()用法及代碼示例
- Java Java lang.Long.highestOneBit()用法及代碼示例
- Java Java lang.Long.reverse()用法及代碼示例
- Java Java.util.concurrent.Phaser用法及代碼示例
- Java Java lang.Long.byteValue()用法及代碼示例
- Java Java.util.function.LongPredicate用法及代碼示例
- Java Java.util.function.DoublePredicate用法及代碼示例
注:本文由純淨天空篩選整理自 Arrays.toString() in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。