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

    Hashtable stringa e intero??

    buongiorno a tutti, sto scrivendo un esercizio utilizzando l'hashtable e lo switch, mi da sempre errore e non riesco a capire come devo fare per far sì che la chiave "Mammolo" corrisponda a quella posizione nell'hashtable.
    In ingresso devo passargli il nome del nanetto e lui dovrebbe restituirmi la sua relativa posizione.

    La seconda problematica è che alla fine di tutto devo inserire un ciclo for each per avere il totale dei nanetti e la stampa di tutti i loro nomi.
    Vi posto intanto la prima parte di codice
    grazie a tutti

    codice:
    public void hashTableNanetti (String n){
    		Hashtable h = new Hashtable ();
    		h.put('Mammolo', 0);
    		h.put('Brontolo', 1);
    		h.put('Pisolo',2 );
    		h.put('Eolo', 3);
    		h.put('Dotto', 4);
    		h.put('Cucciolo', 5);
    		h.put('Gongolo', 6);
    		String n = (String)h.get("n");
    		//System.out.println("Ciao io sono" + " " + n); 
    	
    	switch (posizione) {
    	case 0: 
    		System.out.println("Ciao Mammolo");
    
    		break;
    	case 1: 
    		System.out.println("Ciao Brontolo");
    
    		break;
    	case 2: 
    		System.out.println("Ciao Pisolo");
    
    		break;
    	case 3: 
    		System.out.println("Ciao Eolo");
    
    		break;
    	case 4: 
    		System.out.println("Ciao Dotto");
    
    		break;
    	case 5: 
    		System.out.println("Ciao Cucciolo");
    
    		break;
    	case 6: 
    		System.out.println("Ciao Gongolo");
    
    		break;
    	default: 
    		System.out.println("Cambio lavoro");
    	break;
    	}
    }
    }

  2. #2
    Ciao

    - Ti consiglio di usare HashMap (dove puoi usare i generics ed evitare grazie ai suggerimenti del compilatore errori come questo) al posto di HashTable, che e' una classe obsoleta
    - Quale errore ti da ? ti consiglio di essere piu' preciso nell'esposizione del problema in modo da rendere gli altri utenti del forum in grado di aiutarti piu' facilmente
    - probabilmente ti da errore qui :
    codice:
    String n = (String)h.get("n");
    stai inserendo le entries come chiave/String e valore/int
    ma poi quando chiami get passi una Stringa invece di un intero come parametro

    ti dovrebbe tornare null e quindi darti un ClassCastException o NullPointerException

  3. #3
    *ti consiglio di essere piu' precis(o|a)

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Aggiungo che, quando si posta del codice, è necessario usare i tag CODE, in modo da mantenere la formattazione e l'indentazione del codice e renderlo, così, leggibile.

    Ho aggiunto io i tag al tuo post.


    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

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.