|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2007
Città: Somewhere
Messaggi: 389
|
[JAVA] Problema stampare Array [I@19821f
Salve a tutti!
Sto imparando il java e sono giunto agli Array Pero'... come provo ad inizializzare e stamparne una mi viene fuori questo codice strano: Codice:
[I@19821f Questo è il codice che uso: Codice:
public class ProvaArray {
public static void main(String[] args) {
int intArray [] = {1,2,3,4};
System.out.println(intArray);
}
}
Come mai? Cosa posso fare? Grazie, MP Ultima modifica di matteo p. : 04-01-2012 alle 20:14. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2007
Messaggi: 2516
|
Mettila così, un array è un armadio nei cui cassetti si mettono i valori: quindi, per stampare i valori, occorre prima aprire i cassetti ad uno ad uno, e non tutto l'armadio in un colpo
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
|
Ciao, gli array a quanto pare non hanno un metodo toString ridefinito. Quello è il metodo toString ereditato da Object in azione
Se vuoi stampare l'intero contenuto di un array in qualche modo, dovrai farti tu un pezzetto di codice che lo fa. Altrimenti, gli oggetti ArrayList, LikedList e Vector hanno un metodo toString che fa quello che vuoi ma non credo sia il tuo caso. |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Sep 2007
Messaggi: 59
|
Per stampare il contenuto di un array devi fare un ciclo per scorrerlo, esso non ha un metodo toString ridefinito, ma quello ereditato da Object
Codice:
public class ProvaArray {
public static void main(String[] args) {
int intArray [] = {1,2,3,4};
for(int i=0; i<intArray.length; i++)
System.out.println(intArray[i]);
}
}
EDIT: Ops, hanno risposto altri meglio di me |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2007
Città: Somewhere
Messaggi: 389
|
Grazie mille! Gentilissimi e velocissimi
Pero', allora, come mai se uso i "char" al posto degli "int" mi stampa per bene? Codice:
public class ProvaArray {
public static void main(String[] args) {
char intArray [] = {'a','b','d','c'};
System.out.println(intArray);
}
}
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
|
Quote:
Codice:
System.out.println Puoi vederli qui i parametri che accetta. http://docs.oracle.com/javase/6/docs...intStream.html Come puoi vedere ha sia char che char[]. Ma riguardo gli altri tipi primitivi, ha solo la variante non array. Edit: In ogni caso non è una cosa che ti sarà molto utile, temo. Nemmeno io lo sapevo: ho spulciato i sorgenti. Ultima modifica di ndakota : 04-01-2012 alle 21:20. |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jul 2007
Città: Somewhere
Messaggi: 389
|
Ok, dubbi dissipati, grazie mille!
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
Quote:
|
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
|
Hai ragione, sono andato a vedere. Chissà quanto codice siamo andati a scrivere inutilmente senza sapere che esisteva già qualche metodo che facesse al caso nostro. La libreria standard di Java è immensa.
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:11.




















