
Originariamente inviata da
andbin
E cosa è stringa? Dovrebbe essere una variabile ... dove la vedi dichiarata?
Appunto, nel toString definisci una variabile, inizialmente vuota ( "" ) a cui
accodi man mano i dati. Poi alla fine la restituisci.
.
L'avevo dichiarata nella classe ScaffaleDiPoligoni!!!!
comunque
codice:
public String toString(){
String stringa = "";
for(int i=0; i <= cnt; i++) {
stringa += vetPoligoni[i].toString() +"\n";
}
return stringa;
}
nel main faccio
codice:
public class Test {
static public void main (String args[]){
ScaffaleDiPoligoni AAA = new ScaffaleDiPoligoni();
AAA.sistemaPoligono(Triangolo.creaCasuale());
AAA.sistemaPoligono(Rettangolo.creaCasuale());
AAA.sistemaPoligono(Cerchio.creaCasuale());
System.out.println(AAA.getPoligono(1));
System.out.println(AAA.getPoligono(2));
System.out.println(AAA.getPoligono(0));
System.out.println(AAA.getPorzioneOccupata());
System.out.println(AAA.toString());
}
}
mi restituisce un errore
codice:
Exception in thread "main" java.lang.NullPointerException
at ScaffaleDiPoligoni.toString(ScaffaleDiPoligoni.java:48)
[Rettangolo AB=5.99083586722723 BC=1.0842254238268625 Perimetro=14.150122582108185cm Area=6.4954165572216125cm^2]
at Test.main(Test.java:15)
[Cerchio V(18,13) r=20.121548553595435 Perimetro=126.4274182296515cm Area=1271.9577172068246cm^2]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[Triangolo AB=7.280109889280518 BC=5.0990195135927845CA= 9.219544457292887 Perimetro=21.59867386016619cm Area=18.500000000000004cm^2]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
46
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
che tipo di errore è?