Προς το περιεχόμενο

Sort Map by its values - Java


johnyc

Προτεινόμενες αναρτήσεις

Δημοσ.

Θα ήθελα να κτρατάω την αντιστοιχία String(key)->Int(value). Όμως μετά θα ήθελα να μπορώ να ταξινομήσω το map με βάσει τα values. Γίνεται; Αν όχι πως αλλιώς μπορώ να το κάνω;

Δημοσ.

Κάτι τέτοιο ίσως:

 

>
private Object getKey(Object value){
   Iterator<Object> it = myMap.keySet().iterator;
   while(it.hasNext()){
       Object o = myMap.get(it.next());
       if (o == value)
           return o;
   }
   return null;
}

 

Σκέψου πάντως μήπως να φτιάξεις το Map σου ως:

Int(value)->String(key)

 

:-D

  • Moderators
Δημοσ.

Αυτό τι ακριβώς κάνει;

 

Κάτι τέτοιο ίσως:

 

>
private Object getKey(Object value){
   Iterator<Object> it = myMap.keySet().iterator;
   while(it.hasNext()){
       Object o = myMap.get(it.next());
       if (o == value)
           return o;
   }
   return null;
}

 

 

Μάλλον αυτό θα εννοούσες:

 

>
private Object getKey(Object value){
   Iterator<Object> it = myMap.keySet().iterator;
   while(it.hasNext()){
       Object o = it.next();
       if (myMap.get(o) == value)
           return o;
   }
   return null;
}

 

Αν και η αντιστροφή του map δεν θα σου δώσει πάντα το σωστο κλειδί (αν πχ δυο κλειδιά έχουν το ίδιο value)

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...