Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    139

    JAVA - Problemi con Vector e procedura

    for (int n=0;n<utenti.size();n++){
    User tmp = (User)utenti.elementAt(n);
    if (tmp.nickName().equals(nick)) {
    result = tmp;
    }
    }

    Cosa vuol dire questa procedura???
    Non riesco a capire che cosa si intnende con :
    User tmp = (User)utenti.elementAt(n); //L'unica cosa che ho capito che utente è un vector e il resto che cos'e'??Cosa serve il vettore in questa riga di codice???(User tmp = (User))

    Grazie a tutti!!!
    Fabio

  2. #2
    il vector è un classe container: al suo interno può ospitare degli oggetti
    siccome tutti gli elementi del vettore sono considerati degli oggetti, al momento di recuperarli dal Vector li devi castizzare all'oggetto che avevi inserito
    23-08-2005: Udinese in cémpions lìg
    Questa estate l'ho passata a Tallin

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    139
    Non ho capito

    User tmp = (User) Cos'e la classe che ho: User????

  4. #4
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Come ti ha detto pippo75 la classe Vector è un container di oggetti, significa che dentro ad un Vector ci puoi mettere ogni tipo di oggetto, ad esempio String, Date, Color, etc..., però per lui sono tutti "Object" (infatti ogni classe estende la classe base Object).
    L'unica cosa è che quando devi estrarre un oggetto dal Vector (getElementAt), lui ti restituisce un oggetto generico (classe Object), non un oggetto della classe originale (String, Date, ...).
    A questo punto devi essere tu a sapere qual'è la classe originale di questo oggetto e a farne il casting.

    La riga User tmp = (User)utenti.elementAt(n); la potresti scrivere anche così:
    Object obj = utenti.elementAt(n); // estrae un oggetto generico
    Utente ut = (Utente)obj;

    Il risultato è il medesimo, ottieni un oggetto Utente.

    Capito?
    ghinz

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    139
    Ok Grazie Mille a tutti e due!!!!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.