Ciclo for annidato

di il
8 risposte

Ciclo for annidato

Ragazzi qua sto regredendo ho queste righe
int num [] [] = new int [1][3];
for (int i =0; i < num.length; i++) {
   for (int j =0; j <num[i].length; j++) {
        num [i] [j] = 10;
e il risultato è :
num [0] [0] =10;
num [0] [1] =10;
num [0] [2] =10;
allora è un array bidimensioanle con una riga e tre colonne,però la j non scorre fino a num.length che sarebbe zero?
datemi una mano

8 Risposte

  • Re: Ciclo for annidato

    maracaibo25 ha scritto:


    però la j non scorre fino a num.length che sarebbe zero?

    num.length vale 1
    num[0].length vale 3

    Quindi il for esterno fa 1 ciclo, quello interno 3.
  • Re: Ciclo for annidato

    andbin ha scritto:



    num.length vale 1
    num[0].length vale 3

    Quindi il for esterno fa 1 ciclo, quello interno 3.
    Ok grazie andbin
  • Re: Ciclo for annidato

    Se hai questi dubbi (sempre elementari) perché non provi a visualizzare i valori per renderti conto da solo?

    Perché non visualizzavi il valore di num.length per capire?
  • Re: Ciclo for annidato

    oregon ha scritto:


    Se hai questi dubbi (sempre elementari) perché non provi a visualizzare i valori per renderti conto da solo?

    Perché non visualizzavi il valore di num.length per capire?
    hai ragione oregon quindi per vedere se ho capito una volta che cicla tutte e tre le volte la j esce ed in pratica finisce il codice perche "num [0] [0] =10" gia è stato ciclato con la j, non so se mi sono spiegato bene
  • Re: Ciclo for annidato

    maracaibo25 ha scritto:


    una volta che cicla tutte e tre le volte la j esce ed in pratica finisce il codice perche "num [0] [0] =10" gia è stato ciclato con la j, non so se mi sono spiegato bene
    No. Ma il dubbio quale è quindi? Cosa davvero non è chiaro?

    L'ho detto prima:
    - il for esterno cicla solo 1 volta (con i = 0)
    - il for interno cicla 3 volte (con j = 0 .... 1 .... 2 )

    stop, finito lì.
  • Re: Ciclo for annidato

    andbin ha scritto:


    No. Ma il dubbio quale è quindi? Cosa davvero non è chiaro?

    L'ho detto prima:
    - il for esterno cicla solo 1 volta (con i = 0)
    - il for interno cicla 3 volte (con j = 0 .... 1 .... 2 )

    stop, finito lì.
    credevo che dopo aver ciclato la j 3 volte uscisse definitivamente dal codice
  • Re: Ciclo for annidato

    maracaibo25 ha scritto:


    credevo che dopo aver ciclato la j 3 volte uscisse definitivamente dal codice
    Ma infatti è così. Dopo che j è arrivato a 2, il for interno termina. Il for esterno pure termina dato che non ci sono altre righe dell'array.
  • Re: Ciclo for annidato

    andbin ha scritto:


    Ma infatti è così. Dopo che j è arrivato a 2, il for interno termina. Il for esterno pure termina dato che non ci sono altre righe dell'array.
    grazie andbin
Devi accedere o registrarti per scrivere nel forum
8 risposte