Pages: [1]   Go Down
Print
Author Topic: Problema oggetti  (Read 966 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
Gam
Apprendista Forumista
**
Offline Offline

Posts: 385



« on: 28-01-2009, 16:44:16 »

Ragazzi i problemi nn finiscono mai!!!
Come faccio ad assegnare il valore di un oggetto ad una variabile intera?
Es.:
Nella classe data ho creato un array di mesi -----> int mese[]=new int[13] ed è stato inizializzato nella classe stessa.
Nel main:
Data d=new Data();
int i=0;
i=d.mese[9];         <------- questa operazione viene compilata ma restituisce il valore 0
COME DEVO FARE PER RISOLVERE IL PROBLEMA?
Logged
ɹǝǝuıƃuǝsɹǝʌǝɹ
Administrator
God of the Forum
*****
Offline Offline

Gender: Male
Posts: 4.474


Più grande è la lotta, e più è glorioso il trionfo


WWW
« Reply #1 on: 28-01-2009, 17:16:31 »

Logicamente ciò che tu hai scritto è:
int mese[]=new int[13]
Questa istruzione istanzia una variabile array di interi che inizializzi impostandola con un nuovo array di 13 elementi, ognuno dei quali è un valore int NON ancora assegnato da te (cioè zero di default).
Non hai postato l'implementazione del costruttore che poi inizializza tali valori nella classe stessa, quindi ti suggerisco di replicare inserendo tale inizializzazione, e anche tutti i metodi che potrebbero modificare i valori dell'array mese, perché tali codici sono molto importanti.

Ora, quando tu assegni alla variabile intera i il valore di d.mese[9] semplicemente vi stai copiando dentro il valore intero contenuto nella 10a posizione dell'array mese dell'oggetto d, che da quanto dici, risulta essere 0.

Quello che serve a te da ciò che mi pare di capire è che vuoi assegnare a una variabile intera il valore di un mese.
Questa operazione è fattibile tramite le strutture enum, disponibili in Java.

Spiega meglio cosa volevi fare e potrò darti una risposta più esaustiva e magari definitivamente chiarificatrice.
Logged

La grande marcia della distruzione mentale proseguirà. Tutto verrà negato. Tutto diventerà un credo. È un atteggiamento ragionevole negare l'esistenza delle pietre sulla strada; sarà un dogma religioso affermarla. È una tesi razionale pensare di vivere tutti in un sogno; sarà un esempio di saggezza mistica affermare che siamo tutti svegli. Accenderemo fuochi per testimoniare che due più due fa quattro. Sguaineremo spade per dimostrare che le foglie sono verdi in estate. Non ci resterà quindi che difendere non solo le incredibili virtù e saggezze della vita umana, ma qualcosa di ancora più incredibile: questo immenso, impossibile universo che ci guarda dritto negli occhi. Combatteremo per i prodigi visibili come se fossero invisibili. Guarderemo l'erba e i cieli impossibili con uno strano coraggio. Saremo tra coloro che hanno visto eppure hanno creduto.

In tutto, amare e servire.

  
                            ن                           
I can deal with ads,
I can deal with buffer,
but when ads buffer
I suffer...

...nutrimi, o Signore, "con il pane delle lacrime; dammi, nelle lacrime, copiosa bevanda...

   YouTube 9GAG    anobii  S  Steam T.B.o.I. Wiki [univ] Lezioni private  ʼ  Albo d'Ateneo Unicode 3.0.1
Usa "Search" prima di aprire un post - Scrivi sempre nella sezione giusta - Non spammare - Rispetta gli altri utenti - E ricorda di seguire il Regolamento
Gam
Apprendista Forumista
**
Offline Offline

Posts: 385



« Reply #2 on: 28-01-2009, 17:43:12 »

Quando ho creato l'array ----> int [] mese = new int [13] ho fatto questa operazione: ho creato dentro la classe data un metodo getMese() in cui ho assegnato alle varie locazioni dell'array mese i numeri:

public int getMese(int y)      dove y è un parametro che mi serve a fare una certa cosa
{
   mese[1]=31
   mese[2]=28 ecc...

non ho utilizzato un costruttore all'interno della classe data. Forse l'inizializzazione dell'array mese la devo fare li?
Grazie, fammi sapere
Logged
ɹǝǝuıƃuǝsɹǝʌǝɹ
Administrator
God of the Forum
*****
Offline Offline

Gender: Male
Posts: 4.474


Più grande è la lotta, e più è glorioso il trionfo


WWW
« Reply #3 on: 28-01-2009, 17:49:00 »

Eccerto, scusa, se prima non inizializzi i valori dell'array mesi, come ti diecvo prima ti spuntano sempre e solo zeri, leggendo i valori di tali celle dell'array boh.
Logged

La grande marcia della distruzione mentale proseguirà. Tutto verrà negato. Tutto diventerà un credo. È un atteggiamento ragionevole negare l'esistenza delle pietre sulla strada; sarà un dogma religioso affermarla. È una tesi razionale pensare di vivere tutti in un sogno; sarà un esempio di saggezza mistica affermare che siamo tutti svegli. Accenderemo fuochi per testimoniare che due più due fa quattro. Sguaineremo spade per dimostrare che le foglie sono verdi in estate. Non ci resterà quindi che difendere non solo le incredibili virtù e saggezze della vita umana, ma qualcosa di ancora più incredibile: questo immenso, impossibile universo che ci guarda dritto negli occhi. Combatteremo per i prodigi visibili come se fossero invisibili. Guarderemo l'erba e i cieli impossibili con uno strano coraggio. Saremo tra coloro che hanno visto eppure hanno creduto.

In tutto, amare e servire.

  
                            ن                           
I can deal with ads,
I can deal with buffer,
but when ads buffer
I suffer...

...nutrimi, o Signore, "con il pane delle lacrime; dammi, nelle lacrime, copiosa bevanda...

   YouTube 9GAG    anobii  S  Steam T.B.o.I. Wiki [univ] Lezioni private  ʼ  Albo d'Ateneo Unicode 3.0.1
Usa "Search" prima di aprire un post - Scrivi sempre nella sezione giusta - Non spammare - Rispetta gli altri utenti - E ricorda di seguire il Regolamento
Pages: [1]   Go Up
Print
Jump to: