Oppure

Loading
15/03/12 14:42
enrico_84
Salve, ho creato un file Welcome.java, lo compilo da shell(uso openSuse come sistema operativo) con il comando javac Welcome.java, però mi dà i seguenti errori:
------------------------------------------------------------------------------------
Welcome.java:5: cannot find symbol
symbol : variable newString
location: class Welcome
String s = newString[2];
^
Welcome.java:6: array required, but java.lang.String found
s[0] = "Welcome ";
^
Welcome.java:7: array required, but java.lang.String found
s[1] = "Enrico!";
^
Welcome.java:9: cannot find symbol
symbol : variable length
location: class java.lang.String
for(int i=0; i < s.length; i++)
^
Welcome.java:10: array required, but java.lang.String found
System.out.println(s[i]);
^
5 errors
-------------------------------------------------------------------------------------
Ora vi posto il codice completo:
--------------------------------------------------------------------------------
public class Welcome
{
public static void main(String[] args)
{
String s = newString[2];
s[0] = "Welcome ";
s[1] = "Enrico!";

for(int i=0; i < s.length; i++)
System.out.println(s[i]);
}
}
---------------------------------------------------------------------------------

Riuscite a capire il problema??
aaa
15/03/12 16:04
Bonny
tu hai fatto un istanza della classe String
new String[2]
l'operatore new ritorna un riferimento (puntatore) all'oggetto riferito
in questo caso l'oggetto è un array di stringhe.
Ora questo riferimento deve essere conservato altrimenti non potresti accedere alle locazioni di memoria dell'array.
Giustamente tu hai scritto:
String s = bla bla...
s è un puntatore ad un oggetto di tipo String ma nel nostro caso il tipo di oggetto da riferire è un array di String[] quindi è sbagliato :)
segue che andra scritto:
String s[] = new String[2];


e nella System.out.println();
System.out.println(s[i]);
Ultima modifica effettuata da Bonny 15/03/12 16:05
aaa