Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446

    [JAVA]Problemi con Vector

    Ragazzi sto tentando di implementare per la prima volta i vettori, ho così creato il mio vettore:

    Vector risultati =new Vector();

    ho poi questi due bellissimi metodi:


    Codice PHP:
        public void addInSearch(String element){
                        
    risultati.addElement(element);
                        
    //risultati.addElement("element22");
                        
    System.out.println(element+" aggiunto alla lista risultati\n");
                    }
        
                    public 
    void viewElements(){

                        
    System.out.println(risultati);
                        
    System.out.println(risultati.elementAt(1);

                    } 
    di cui non ne funziona neanche uno arrghhhh. Gli elementi non vengono completamente aggiunti, nè la stringa element, nè l'altra commentata(ovviamente opportunamente decommentata), e quando provo ad eseguire il metodo view mi da un bel [] totalmente vuoto....dove sto sbagliando?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Scusa ma così non è che si capisce molto ..... bisognerebbe vedere un po' più di codice.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    mmm praticamente il codice è tutto qui, aggiungo qualcosina.. ovvero le chiamate ai metodi...


    Codice PHP:
     Vector risultati =new Vector();
            
            
            
            
                    public 
    void addInSearch(String element){
                        
    risultati.addElement(element); 
                        
    //risultati.addElement("element22"); 
                        
    System.out.println(element+" aggiunto alla lista risultati\n"); 
                    }    
                    public 
    void viewElements(){
                        
    System.out.println(risultati); 
                        
    System.out.println(risultati.elementAt(1); 
                    } 

    un altro file class aggiunge un elemento:


    Codice PHP:
     Login addsearch =new Login();
        
    addsearch.addInSearch(result); 
    (result è una stringa che la classe crea con diversi passaggi)

    e poi un altra classe esegue l'altro medoto per vedere il contenuto del vettore.
    Praticamente quando il metodo addInSearch viene eseguito il println viene visualizzato(quindi presumo che aggiunga anche gli elementi,o meglio dovrebbe farlo perchè in compilazione non mi da errore e neanche in esecuzione), però quando voglio visualizzare il contenuto del vettore mi compare [] come se fosse vuoto

  4. #4
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    non capisco,ho aggiunto questa riga:

    Codice PHP:
    System.out.println(risultati); 
    alla fine del metodo addInSearch,e mi stampa il contenuto del vettore,ma con il metodo viewelements no...con System.out.println(risultati.elementAt(0)); non mi da proprio nulla,invece con System.out.println(risultati) mi da []

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da energie
    Codice PHP:
     Vector risultati =new Vector(); 
    Ma questa variabile 'risultati' è un campo di istanza contenuto nella stessa classe dove ci sono i due metodi che hai postato??? Se lo è, allora i due metodi usano di certo quel campo.

    Altrimenti c'è qualcos'altro che non quadra .... se posti il codice completo di quella classe, forse si riesce a capire meglio.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    si si:


    Codice PHP:
    public class Login extends Thread{
        
        
    Vector searchResults=new Vector();
            
            
                    public 
    void viewElementi(){

                        
    System.out.println(searchResults);
                    }
            
                    public 
    void addInSearch(String element){
                        
    searchResults.addElement(element);
                        
    searchResults.addElement("element22");
                        
                        
    System.out.println(element+" aggiunto alla lista search\n");
                   
    viewElementi();
                    }

    ..... 
    Come vedi ho fatto un po' di cambiamenti se eseguo il metodo viewElementi() da questa stessa classe(come ho fatto da addInSearch) funziona, e mi viene stampato il contenuto del vettore, se invece eseguo il metodo view da un altra classe mi viene stampato il vettore vuoto...cosa devo fare? ti reincollo la parte della chiamata:


    Codice PHP:
    public static void main (String[] argvthrows Exception{
            
    Login login=new Login();
    .....
    else if (
    "view".equals(indata)) {
                                
                            
    login.viewElementi();
                            } 

  7. #7
    Sei sicuro di effettuare le operazioni inserimento e di visualizzazione sulla stessa istanza di Login?

    Perche queste due frasi che hai detto mi fanno pensare il contrario:

    "un altro file class aggiunge un elemento:"
    ...
    "e poi un altra classe esegue l'altro medoto per vedere il contenuto del vettore."
    Al mio segnale... scatenate l'inferno!

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Io continuo a non vedere nulla di strano ... almeno per quanto riguarda i pezzetti di codice postati. La parte in Login non ha nulla di strano, c'è una variabile di istanza searchResults che viene usata dai due metodi.

    Forse il main() che ha qualcosa che non quadra .... ma come ripeto spesso, la sfera di cristallo non ce l'ho.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    @ rave

    Beh no, l'add degli elementi è in una classe, mentre il view è in un altra classe, sono proprio sorgenti .java differenti

  10. #10
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    Ragazzi facendo alcuni test ho visto che è come se fossero due vettori distinti, infatti non so la classe1 avvia il metodo addInSearch il quale aggiunge l'elemento e visualizza il vettore,se dalla classe2 avvio il (nuovo) metodo view:


    Codice PHP:
        public void viewElementi(){
                        
    searchResults.addElement("element");                    
                        
    System.out.println(searchResults);
                    } 
    creato per prova, questo aggiunge il nuovo elemento e mostra il vettore che contiene però SOLO l'ultimo elemento aggiunto(in questo caso "element"), non mostra lo stesso vettore dell'altro metodo con l'aggiunta di questo elemento. Non capisco proprio perchè ma le due classi invece di puntare allo stesso vettore lavorano come se ce ne fossero due(ma c'è solo quello, il codice lo avete praticamente tutto x( ) non so più dove sbattere la testa

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.