Spiegazione codice

di il
5 risposte

Spiegazione codice

Ragazzi scuaste qualcuno me lo puo spiegare questo codice

public class Pippo {
public static void main(String [] args) {
int nums1[] = new int [3];
int nums2[] = {1,2,3,4,5};
nums1 = nums2;
for(int x : nums1) {
System.out.print(x + ":");
}
}
}

il risultato è 1:2:3:4:5 grazie

5 Risposte

  • Re: Spiegazione codice

    Usa i tag CODE, ti era già stato detto. Le reference e i for each sono argomenti di base. Mi sa che almeno quelli li dovresti studiare se vuoi la certificazione...
  • Re: Spiegazione codice

    Scusami weierstrass come si mette il tag
  • Re: Spiegazione codice

    Nums1 è di tre elementi,come fa a passargli num2 che è piu grande,è qua che mi inceppo
  • Re: Spiegazione codice

    maracaibo25 ha scritto:


    Nums1 è di tre elementi,come fa a passargli num2 che è piu grande,è qua che mi inceppo
    Il numero di elementi non conta, è solo importante che il tipo sia compatibile (assegni un int[] dove è richiesto un int[] quindi ok).

    Gli array sono OGGETTI e come per qualunque altro tipo di oggetto, le variabili che tratti contengono un "reference" (pensalo come se fosse un indirizzo nella memoria RAM ... che in effetti poi sotto-sotto lo è/diventa).

    nums1 = nums2;

    vuol dire "guarda nums1, ti assegno il valore reference di nums2 quindi ora fai (anche tu) riferimento a quell'altro array".
    I dati negli array non vengono minimamente coinvolti né toccati da questo assegnamento!


    PS. stai forse studiando per una OCPJP ? Con dubbi a questi livelli non credo la passi ....
    Quindi rimboccati pure le maniche, come si dice.
  • Re: Spiegazione codice

    andbin ha scritto:


    maracaibo25 ha scritto:


    Nums1 è di tre elementi,come fa a passargli num2 che è piu grande,è qua che mi inceppo
    Il numero di elementi non conta, è solo importante che il tipo sia compatibile (assegni un int[] dove è richiesto un int[] quindi ok).

    Gli array sono OGGETTI e come per qualunque altro tipo di oggetto, le variabili che tratti contengono un "reference" (pensalo come se fosse un indirizzo nella memoria RAM ... che in effetti poi sotto-sotto lo è/diventa).

    nums1 = nums2;

    vuol dire "guarda nums1, ti assegno il valore reference di nums2 quindi ora fai (anche tu) riferimento a quell'altro array".
    I dati negli array non vengono minimamente coinvolti né toccati da questo assegnamento!


    PS. stai forse studiando per una OCPJP ? Con dubbi a questi livelli non credo la passi ....
    Quindi rimboccati pure le maniche, come si dice.
    grazie per la risposta, si sto studiando per la certificazione oracle,mi sto esercitando con un simulaore
Devi accedere o registrarti per scrivere nel forum
5 risposte