|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2001
Città: 100 metri dal mare
Messaggi: 4856
|
[JAVA] Stranezza dichiarazione array di object
Ho creato un array di oggetti del tipo
Object pippo[]=new Object[7]; Andando in debug ( mi dava ArrayIndexOutOfBound quando andavo sull'elemento in posizione 7 ) mi sono reso contro che in realta' l'array era solo di dimensione 6 Poi ho provato Object[] pippo=new Object[7]; In questo caso l'array era di dimensione 7 La versione che ho utilizzato di Java e' la 1.5.0_01 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2002
Messaggi: 4334
|
Le notazioni sono equivalenti...
comunque e' normale, in un array di dimensione 7 l'indice puo' andare da 0 a 6.
__________________
|Java Base| |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2001
Città: 100 metri dal mare
Messaggi: 4856
|
Allora, non mi sono fatto capire..
Nel primo caso l'array risultava essere di dimensione 6 Nel secondo caso l'array risultava essere di dimensione 7 Che poi gli indici vadano da 0 a 6 e' scontato.. Nel primo caso gli indici erano da 0 a 5 Nel secondo da 0 a 6 Insomma c'e' qualcosa che non va ! Ciao ! |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 3852
|
Prova a cambiare compilatore e a vedere cosa succede, la notazione giusta è la seconda, anche la prima viene accettata ma, per quanto ne so, dovrebbe essere trasformata nell'altra a tempo di compilazione..
__________________
Cerco fotocamera con buono zoom!! CLICCA! ° Moderatore del Forum Ufficiale di ElaborarE (responsabile sezione HI-FI e Car Audio) ° |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2002
Messaggi: 4334
|
hai parlato di elemento in posizione 7, mi sono confuso...
comunque intendi dire che se stampi pippo.length ti da' 6 nel primo caso e 7 nel secondo?
__________________
|Java Base| |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Per quanto ne so non è mai stato aperto un bug al riguardo dai tempi di Java 1.1. E una bizzarria tanto grande non sarebbe certo passata inosservata. Le notazioni:
Object pippo[] e Object[] pippo sono equivalenti benchè convenzionalmente si preferisca la prima a sottolineare visivamente che il tipo di pippo non è Object.class ma Object[].class. O hai riassegnato il riferimento all'array iniziale ad uno di lunghezza inferiore o il debugger che usi introduce dei bug quando non ce ne sono. |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Nov 2001
Città: 100 metri dal mare
Messaggi: 4856
|
Quote:
Ciao ! Ultima modifica di DvL^Nemo : 21-11-2006 alle 21:39. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:09.











|








