Ce face Arrays.toString
Arrays.toString(a) returnează elementele între paranteze drepte, separate prin virgulă și spațiu: [7, 10, 5]. Pentru null returnează textul "null". Este felul obișnuit de a afișa un array.
Pentru un array cu mai multe dimensiuni (int[][]), toString afișează doar adresele rândurilor. Arrays.deepToString(m) intră în fiecare rând și afișează totul: [[1, 2], [3, 4]].
Parametri
| Parametru | Descriere |
|---|---|
a |
Array-ul de afișat. |
Ce returnează
Un String cu elementele.
Exemple
Exemplul 1: Diferența dintre println direct și toString
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
double[] preturi = {12.5, 8.0, 30.99};
String[] zile = {"luni", "marți", "miercuri"};
String direct = String.valueOf(preturi);
System.out.println("Direct începe cu: " + direct.substring(0, 3));
System.out.println(Arrays.toString(preturi));
System.out.println(Arrays.toString(zile));
System.out.println(Arrays.toString((int[]) null));
}
}
Rezultat
Direct începe cu: [D@
[12.5, 8.0, 30.99]
[luni, marți, miercuri]
null
Exemplul 2: Afișarea unei matrice cu deepToString
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[][] sala = {
{1, 0, 1},
{0, 0, 1},
{1, 1, 1}
};
System.out.println(Arrays.deepToString(sala));
for (int[] rand : sala) {
System.out.println(Arrays.toString(rand));
}
String[][] orar = {{"Luni", "Mate"}, {"Marți", "Română"}};
System.out.println(Arrays.deepToString(orar));
}
}
Rezultat
[[1, 0, 1], [0, 0, 1], [1, 1, 1]]
[1, 0, 1]
[0, 0, 1]
[1, 1, 1]
[[Luni, Mate], [Marți, Română]]
Greșeli frecvente
- Folosești
toStringpe o matrice și vezi[[I@.... FoloseștedeepToString. - Folosești
deepToStringpe unint[]simplu. Nu se compilează (primeșteObject[]); pentru un rând foloseștetoString.
Comenzi înrudite
Arrays: Clasă cu metode statice pentru array-uri: afișare, sortare, căutare, copiere, umplere, comparare și transformare în listă sau stream.Arrays.equals: Compară două array-uri după conținut: true dacă au aceeași lungime și aceleași elemente pe aceleași poziții.Arrays.fill: Pune aceeași valoare pe toate pozițiile unui array sau pe o porțiune din el.String.join: Lipește mai multe șiruri într-unul singur, cu un separator între ele (opusul lui split).