Come faccio ad ordinare un Treemap per valore? Ci sono Stringhe..
Come faccio ad ordinare un Treemap per valore? Ci sono Stringhe..
Tony
No, non è possibile. Un TreeMap è una collezione di tipo "sorted", cioè la collezione internamente è mantenuta ordinata basandosi sul contenuto delle chiavi sfruttando la comparazione tramite Comparable (o Comparator).Originariamente inviato da tony83
Come faccio ad ordinare un Treemap per valore? Ci sono Stringhe..
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Allora posso avere una struttra che ha chiave doppie e ordinare per chiave? con che struttura? come?Originariamente inviato da andbin
No, non è possibile. Un TreeMap è una collezione di tipo "sorted", cioè la collezione internamente è mantenuta ordinata basandosi sul contenuto delle chiavi sfruttando la comparazione tramite Comparable (o Comparator).
Tony
Chiavi doppie?? Tra l'altro una chiave non può certo essere doppia in un Map.Originariamente inviato da tony83
Allora posso avere una struttra che ha chiave doppie e ordinare per chiave? con che struttura? come?
Comunque bisogna vedere cosa devi farci. Se ti interessano solo i valori, allora potresti ottenere un Collection<V> dalla Map (vedi metodo values() ), quindi ordinarlo (non direttamente, un generico Collection non è ordinabile) e .. farci quello che vuoi. Ma dipende se ti va bene in base a cosa devi fare di preciso (e non posso saperlo se non lo spieghi).
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
hai ragione scusa...Originariamente inviato da andbin
Chiavi doppie?? Tra l'altro una chiave non può certo essere doppia in un Map.
Comunque bisogna vedere cosa devi farci. Se ti interessano solo i valori, allora potresti ottenere un Collection<V> dalla Map (vedi metodo values() ), quindi ordinarlo (non direttamente, un generico Collection non è ordinabile) e .. farci quello che vuoi. Ma dipende se ti va bene in base a cosa devi fare di preciso (e non posso saperlo se non lo spieghi).
Allora ti spiego!
io avrei bisogno di inserire in una struttura tipo hashmap o treemap, composta da stringa stringa come chiave, valore, una serie di coppie in questa maniera:
nella chiave ci metto i codice fiscali mentre nei valori l'ente o viceversa, il fatto che devo riuscire a trovare una soluzione per far si che per ogni ente riesco a fare una determinata azione.
Mettendo in ordine i valori io potrei tranquillamente fare un controllo sul precedente verificando se esistono più persone con lo stesso ente, ma se sono in ordine sparso sarà difficle che possa fare una cosa del genere.
Capisci quello che intendo dire?
Tony
Senza dover essere dei guru del codice fiscale, è risaputo che esso non è univoco. Pertanto due persone potrebbero avere lo stesso c.f.Originariamente inviato da tony83
nella chiave ci metto i codice fiscali mentre nei valori l'ente o viceversa, il fatto che devo riuscire a trovare una soluzione per far si che per ogni ente riesco a fare una determinata azione.
Mettendo in ordine i valori io potrei tranquillamente fare un controllo sul precedente verificando se esistono più persone con lo stesso ente, ma se sono in ordine sparso sarà difficle che possa fare una cosa del genere.
A questo punto dovresti specificare ancora meglio cosa intendi fare: ti interessa accedere velocemente alla map avendo come chiave un c.f oppure un nome di ente/persona? O entrambe le possibilità?
Se ti interessa avere come chiave un c.f., allora come valore dovresti avere una lista di nomi. Nulla ti vieta comunque di avere 2 map, una per cf->nome/i e l'altra per nome->cf.
Inoltre: ti serve realmente un TreeMap? Cioè hai bisogno che la collezione sia tenuta ordinata in base al contenuto delle chiavi?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Interessa accedere velocemente alla map avendo entrambe le possibilità.Originariamente inviato da andbin
Senza dover essere dei guru del codice fiscale, è risaputo che esso non è univoco. Pertanto due persone potrebbero avere lo stesso c.f.
A questo punto dovresti specificare ancora meglio cosa intendi fare: ti interessa accedere velocemente alla map avendo come chiave un c.f oppure un nome di ente/persona? O entrambe le possibilità?
Se ti interessa avere come chiave un c.f., allora come valore dovresti avere una lista di nomi. Nulla ti vieta comunque di avere 2 map, una per cf->nome/i e l'altra per nome->cf.
Inoltre: ti serve realmente un TreeMap? Cioè hai bisogno che la collezione sia tenuta ordinata in base al contenuto delle chiavi?
In realtà gli enti devono essere ordinati perchè devo fare un confronto e capire quali sono quelli uguali e quali no
Tony
Ho deciso..Originariamente inviato da tony83
Interessa accedere velocemente alla map avendo entrambe le possibilità.
In realtà gli enti devono essere ordinati perchè devo fare un confronto e capire quali sono quelli uguali e quali no
Farò un treemap con all'interno come chiave ente e come valore un hashmap contenente (chiave: Cf, valore: Ente)
le chiavi sono univoche quindi perfetto..
Ora la domanda è:
come faccio per ordinare il treemap per chiave considerando che sono stringhe?
Tony
Non capisco l'utilità di una struttura dati del genere.Originariamente inviato da tony83
Farò un treemap con all'interno come chiave ente e come valore un hashmap contenente (chiave: Cf, valore: Ente)
String implementa Comparable<String> quindi in un TreeMap chiavi di tipo String sono già tenute ordinate secondo il "natural ordering".Originariamente inviato da tony83
come faccio per ordinare il treemap per chiave considerando che sono stringhe?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Voglio che sia ordinato come il treemap ed avere chiavi non univoche allo stesso tempo!!Originariamente inviato da andbin
Non capisco l'utilità di una struttura dati del genere.
String implementa Comparable<String> quindi in un TreeMap chiavi di tipo String sono già tenute ordinate secondo il "natural ordering".
come posso fare?
Tony