Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Errore caricamento info da file in hashTable

    Ciao a tutti ragazzi; ho un problema di cui non ne riesco a venire a capo ho un file di testo le cui informazioni sono le seguenti:
    burro di cacao
    10
    80
    pasta di cacao
    12
    100
    latte
    2
    30
    vaniglia
    1
    20
    Devo caricare le seguenti info in un hashtable in cui la chiave è il nome del prodotto,e poi il valore associato è un vettore di interi di 2 elementi.
    Io ho usato il seguente codice per effettuare il caricamento:
    if(listino_elementi.exists()
    {
    FileReader fr=new FileReader(listino_elementi);
    BufferedReader br=new BufferedReader(fr);
    Integer vett[];
    vett=new Integer[2];
    String app=br.readLine();
    while(app!=null)
    {
    int price=Integer.parseInt(br.readLine());
    int disponibilita=Integer.parseInt(br.readLine());
    vett[0]=price;
    vett[1]=disponibilita;
    listino_prodotti.put(app,vett);
    app=br.readLine();
    }
    }
    Il problema è che quando vado a stampare il contenuto per vedere se è stato caricato tutto correttamente, e vado a stampare il vettore associato ad ogni key; mi stampa sempre gli stessi valori associati alla parola chiave vaniglia.
    Cioè in pratica è come se al vettore associato alla key pasta di cacao, memorizza i valori 1 e 20 invece di 12 e 100.Dove sbaglio???

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Errore caricamento info da file in hashTable

    Originariamente inviato da identikit_man
    codice:
    	Integer vett[];
    	vett=new Integer[2];  // Ne hai solo uno che riusi sempre!!
    	String app=br.readLine();
    	while(app!=null)
    	{
        .....
    		vett[0]=price;
    		vett[1]=disponibilita;
        .....
    	}
    }
    mi stampa sempre gli stessi valori associati alla parola chiave vaniglia.
    Perché l'array è sempre lo stesso identico oggetto. Devi istanziare un nuovo array per ogni entry.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.