|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2002
Città: Rovigo
Messaggi: 343
|
[JAVA] Scova l'errore
Ciao a tutti, dopami c'è il primo compitino di linguaggi 2. Ero insicuro su di un esercizio anche se adesso penso di avere scovato la soluzione. Comunque come verifica lo propongo lo stesso:
Supponendo che sia definita una classe Vetture con un metodo d'istanza mesiInGiacenza di tipo int , che riporta il numero di mesi di permanenza in concessionaria, dire quali errori sono contenuti nel seguente frammento di codice java: Vetture [] Renault5; boolean [] vendute [ Renault5.length() ]; for (int i=0; i< Renault5.lenght(); i++) vendute[i] = Renault5[i].mesiInGiacenza() == 0; -0- Bene, si vede subito che c'è un casting non ammesso nella 4 riga, infattiil tipo boolean non accetta nessun tipo di casting. Renault5.lenght() è sbagliato, per far ritornare il numero di elementi di un array si usa lenght senza parentesi. Lenght() si usa con le stringhe. Ricapitolando io ho notato 2 errori, o meglio, mi sembra che gli errori siano questi. Chi mi puo' dire la sua????
__________________
Cuore sportivo IN OLANDA E' LEGALE!!!! "...sempre onti anca cola patente a ponti" |
|
|
|
|
|
#2 |
|
Bannato
Iscritto dal: Jan 2003
Città:
Messaggi: 4423
|
...ma questo frammento cosa dovrebbe fare?
|
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Oct 2004
Città: Roma
Messaggi: 124
|
guarda che il cast alla 4^ riga a me pare legalissimo... non importa i cast che può fare o non fare il tipo boolean, l'operatore doppio uguale (==) restituisce un booleano, non c'è nessun cast.
l'errore clamoroso si trova alla 2^ riga, le parentesi stanno sia dopo il tipo sia dopo l'identificatore, e poi in Java mi pare che non è possibile specificare una costante, cioè l'array deve essere creato x forza dinamicamente con new (ma forse su quest'ultimo punto mi sbaglio io). E comunque, anche ammettendo un costrutto del tipo Codice:
tipo ident[costante]; |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2002
Città: Rovigo
Messaggi: 343
|
In effetti non ci avevo pensato all'inizializzazione...
In quanto al casting ho ancora qualche dubbio.... ora faccio una prova con eclipse....
__________________
Cuore sportivo IN OLANDA E' LEGALE!!!! "...sempre onti anca cola patente a ponti" |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Oct 2002
Città: Rovigo
Messaggi: 343
|
Cavolo grazie! Non c'è nessun problema sul casting! Che stupido che sono. Il problema è sull'inizializzazione e sul metodo length().
Ps. un array lo puoi creare anche con questa sintassi: int array[] = {1,2,3}; e anche int [] array = {1,2,3}; //così è scritto anche nei lucidi del prof...
__________________
Cuore sportivo IN OLANDA E' LEGALE!!!! "...sempre onti anca cola patente a ponti" Ultima modifica di Burlindo : 02-11-2004 alle 20:55. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
71103: hai la signature irregolare... L'immagine in firma può essere al massimo 100x50 pixel... Puoi editare ? Grazie
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:34.



















