Aiuto numbers.length

di il
7 risposte

Aiuto numbers.length

Salve ragazzi il codice che posto è quasi tutto chiaro,vorrei solo sapere che fa qua grazie
class Phone {  
  public static void main(String args[]) {  
    String numbers[][] = { 
      { "Tom", "555-3322" }, 
      { "Mary", "555-8976" }, 
      { "Jon", "555-1037" }, 
      { "Rachel", "555-1400" } 
    };
    int i; 
 
    if(args.length != 1)   
      System.out.println("Usage: java Phone <name>"); 
    else { 
      for(i=0; i<numbers.length; i++) { 
        if(numbers[i][0].equals(args[0])) {   

          System.out.println(numbers[i][0] + ": " + 
                             numbers[i][1]); 
          break; 
        } 
      } 
      if(i == numbers.length)   <--- QUA
        System.out.println("Name not found."); 
    } 
  }  
}

7 Risposte

  • Re: Aiuto numbers.length

    Se all'uscita del ciclo i è uguale al numero di elementi dell'array vuol dire che il nominativo non è stato trovato perché il for non è stato fermato mai dal break.

    Ancora queste difficoltà con i cicli for?
  • Re: Aiuto numbers.length

    Perdonami oregon ma ancora non mi è chiaro,potresti farmi un'esempio
  • Re: Aiuto numbers.length

    Ma che esempio? Dici davvero?
  • Re: Aiuto numbers.length

    Allora io l'ho compilato per provare con un nome inventato "Pippo",questo entra nel for e lo scorre tutto ma non viene brekkato mai perche "Pippo" non è presente nell'array quindi va nell'if e a sua volta viene confrontato con tutti i nomi presenti nell'arry senza essere trovato nemeeno qui stampando la scritta "name not found" giusto?
  • Re: Aiuto numbers.length

    maracaibo25 ha scritto:


    quindi va nell'if e a sua volta viene confrontato con tutti i nomi presenti nell'arry
    No. numbers.length vale 4 (l'array bidimensionale ha 4 "righe").
    Se il nome non viene trovato, allora i vale 4.
    4 == 4 è "vero" quindi dice not found.
  • Re: Aiuto numbers.length

    Ok ok ci siamo grazie a tutti e due
  • Re: Aiuto numbers.length

    Ma come farebbe nella if a confrontare tutti i nomi?

    Come ti viene in mente?
Devi accedere o registrarti per scrivere nel forum
7 risposte