Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Dubbio codice java

Hybrid View

  1. #1
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Mi pare evidente: il metodo ritorna la posizione dell'elemento cercato all'interno dell'array... se questo elemento viene trovato, altrimenti viene restituito -1.

    Lo spiego con altre parole.

    La funzione cerca l'elemento "numero" all'interno dell'array "vettore". Se l'elemento viene trovato, la funzione restituisce la posizione dell'elemento. Se non viene trovato, la funzione restituisce -1.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  2. #2
    Ciao,
    beh per come l'hai scritta tu la funziona "cerca" ritornerà sempre -1
    Semmai dovrai scrivere:
    codice:
    public static int cerca(int[] vettore, int numero){
    for(int i=0;i<vettore.length;i++)
             if(vettore[i]==numero)
                    return i;
    return -1;
    Ciao.
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Quote Originariamente inviata da schumy2000 Visualizza il messaggio
    Ciao,
    beh per come l'hai scritta tu la funziona "cerca" ritornerà sempre -1
    Semmai dovrai scrivere:
    codice:
    public static int cerca(int[] vettore, int numero){
    for(int i=0;i<vettore.length;i++)
             if(vettore[i]==numero)
                    return i;
    return -1;
    Ciao.
    Corretto. Non mi ero accorto che mancava l'indicizzazione... ad ogni modo, immagino sia stato un errore di copiatura del codice, altrimenti non compila nemmeno.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Quote Originariamente inviata da schumy2000 Visualizza il messaggio
    Ciao,
    beh per come l'hai scritta tu la funziona "cerca" ritornerà sempre -1
    Semmai dovrai scrivere:
    codice:
    public static int cerca(int[] vettore, int numero){
    for(int i=0;i<vettore.length;i++)
             if(vettore[i]==numero)
                    return i;
    return -1;
    Ciao.
    E all'interno del main "for(int num : numeri)" significa che assegno a una variabile chiamata "num" il contenuto del vettore "numeri"?
    In teoria la sintassi del ciclo for non dovrebbe essere(i=0;i<n;i++)?Forse sono domande un po' scontate ma sto imparando da poco Java .
    Grazie mille!
    Ultima modifica di eagle87; 30-12-2014 a 15:53

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Quote Originariamente inviata da eagle87 Visualizza il messaggio
    E all'interno del main "for(int num : numeri)" significa che assegno a una variabile chiamata "num" il contenuto del vettore "numeri"?
    In teoria la sintassi del ciclo for non dovrebbe essere(i=0;i<n;i++)?Forse sono domande un po' scontate ma sto imparando da poco Java .
    Grazie mille!

    Quello è il "nuovo" for-each, introdotto da Java 5, che affianca la normale sintassi del ciclo for.
    Quando non è necessario conoscere la posizione di un elemento, ma si vuole comunque scorrere una collezione (o un array) è possibile usare il for-each.

    Con il for-each, l'array verrà percorso nell'ordine (dal primo all'ultimo elemento) e ciascun elemento dell'array verrà assegnato, ad ogni iterazione, alla variabile "num".

    Questo

    codice:
    for(int num : array) { ... }

    è equivalente a questo:

    codice:
    for(int i=0; i<array.length; i++) {
       int num = array[i];
       ...
    }

    con l'unica differenza che la versione "for-each" usa una variabile in meno (non c'è l'indice).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Quote Originariamente inviata da LeleFT Visualizza il messaggio
    Mi pare evidente: il metodo ritorna la posizione dell'elemento cercato all'interno dell'array... se questo elemento viene trovato, altrimenti viene restituito -1.

    Lo spiego con altre parole.

    La funzione cerca l'elemento "numero" all'interno dell'array "vettore". Se l'elemento viene trovato, la funzione restituisce la posizione dell'elemento. Se non viene trovato, la funzione restituisce -1.


    Ciao.
    Grazie della risposta..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.