Visualizzazione dei risultati da 1 a 6 su 6

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Quote Originariamente inviata da crissstian96 Visualizza il messaggio
    Poiché ci possono essere più chiavi con lo stesso valore mi andrebbe benissimo sia che me ne venga restituito uno casuale sia che mi venga restituito l'array dei valori corrispondenti.
    'spetta... Tu stai mettendo in mappa una cosa del genere?

    map.put("A", "value1");
    map.put("A", "value2");
    map.put("A", "value3");

    Tieni conto che facendo così il valore di A viene sovrascritto ogni volta!

    Spiega meglio come hai modellato i dati.. Hai una mappa di liste? Ad esempio Map<String, List<String>>?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  2. #2
    Quote Originariamente inviata da Alex'87 Visualizza il messaggio
    'spetta... Tu stai mettendo in mappa una cosa del genere?

    map.put("A", "value1");
    map.put("A", "value2");
    map.put("A", "value3");

    Tieni conto che facendo così il valore di A viene sovrascritto ogni volta!

    Spiega meglio come hai modellato i dati.. Hai una mappa di liste? Ad esempio Map<String, List<String>>?
    Io ho una mappa <String><Integer> come questa:
    map.put("A", 32);
    map.put("B", 41);
    map.put("C", 32);
    map.put("D", 12);

    mi servirebbe un metodo che facesse in modo che passando ad esempio 41 mi venga restituito "B", e passando 32 mi venga restituito l'array contenente "A" e "C" oppure semplicemente una delle due stringhe.
    Insomma, il metodo map.get() se dai una chiave ti restituisce il corrispettivo valore, io voglio l'esatto contrario.
    E' possibile?
    Ultima modifica di crissstian96; 25-11-2013 a 18:14

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da crissstian96 Visualizza il messaggio
    mi servirebbe un metodo che facesse in modo che passando ad esempio 41 mi venga restituito "B", e passando 32 mi venga restituito l'array contenente "A" e "C" oppure semplicemente una delle due stringhe.
    Insomma, il metodo map.get() se dai una chiave ti restituisce il corrispettivo valore, io voglio l'esatto contrario.
    E' possibile?
    Sì, è possibile ma non c'è un metodo "di serie" che fa questo. Devi implementarlo tu. Iteri sulle chiavi, per ogni chiave prendi il valore, se è quel valore puoi restituire subito la chiave o accodarla in una lista se l'intenzione è di restituire più chiavi.
    Tutto qui.
    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 © 2026 vBulletin Solutions, Inc. All rights reserved.