Böyle bir kodum var, sortby'de verilen tuşa göre Harita Listesinden değeri sıralamaya çalışıyorum. Kod aşağıdaki gibidir: uyumsuz veri türleri nedeniyle karşılaştırıcıyı karşılaştıramaz ancak karşılaştırıcıyla karşılaştırılamaz. Map<>
'u Map<String,String>
veya başka bir öneriye nasıl dönüştürebilirim, böylece karşılaştırıcı tüm veri türlerini karşılaştırabilir mi?Haritaya <Eşleme <String, Dize>
cevap
class MapComparator<K,V extends Comparable<V>> implements Comparator<Map<K,V>> {
public int compare(Map<K,V> m1, Map<K,V> m2) {
return m1.get(sortby).compareTo(m2.get(sortby));
}
}
Teşekkür ederiz @HannoBinder –
lm
ve m
değişkenleri için ham türleri kullanıyorsunuz. Aşağıdaki için kodunuzu değiştirebilirsiniz:
List<Map<String, String>> lm = new ArrayList<>();
Map<String, String> m = new HashMap<>();
// ...
m = new HashMap<>();
// ...
for (Map<String, String> map : lm)
{
// ...
}
// ...
for (Map<String, String> map : lm)
{
// ...
}
Not ArrayList
yapıcı atama (Map<String, String>
) sol taraftan tip anlaşılmaktadır belirten <Map>
yerine <>
kullandığı. Ayrıca şöyle yazabiliriz:
List<Map<String, String>> lm = new ArrayList<Map<String, String>>()
aynı HashMap
yapıcıları için de geçerlidir.
OP, girişinin her zaman bir String olmadığını, yani kaynak harita için 'Map
Yorumda @KevinEsche yanıtından nasıl farklıdır? –
- 1. Jackson - Haritaya Özyineleme ayrıştırma <String, Object>
- 2. ArrayList <HashMap <String, String >> String []
- 3. Haritaya <String, List <Foo>>: Daha iyi bir uygulaması arıyorsanız
- 4. ICollection <string> string []
- 5. Bir Tuple <string, string, Func <bool>>
- 6. <Func <T, string>>
- 7. İsteğe bağlı <Map <String, String >> yerine boş bir Map <String, String>
- 8. HashSet <String> String türüne dönüştürme []
- 9. JPA Haritası <String, String> eşleştirmesi
- 10. String ArrayList <String> Casting []
- 11. Desen eşleme işlevi boş haritaya karşı
- 12. Eşleme Dictionary</p> <p>Örnek
- 13. Dizeler dizisini <string>
- 14. Set <String> Set []?
- 15. Sözlük <string, object>
- 16. dönüştürme Liste <String>
- 17. Neden bir sözlük oluşturamıyorum <string, dictionary <string, string >>?
- 18. LinkedHashMap <string, LinkedHashMap <string, string >> nasıl görüntülenebilir
- 19. LINQ - Sözlük içine Listesini <string> çevirmek <string, string>
- 20. Automapper Eşleme Listesi <T>, T
- 21. Dönüştürme <Object> Koleksiyon <String>
- 22. Java sözlüğü <String, Liste <Object>>
- 23. 'Async <string []>' türü 'seq <'a>'
- 24. Hashmap <String, List <Items>> 'nu,
- 25. ArrayList <ArrayList <String>> öğesini nasıl sıralayabilirim?
- 26. List <String> ile <form:select> nasıl doldurulur?
- 27. WPF MVVM Bind Sözlük <String, Liste <String>> datagrid'e göre
- 28. Dictionary <dynamic, dynamic> to Dictionary <string, string> Colllection.ToDictionary()
- 29. HashMap <String, boolean> tüm anahtarları HashMap <String, Tamsayı> içine kopyalayın ve değerleri
- 30. ArrayList <ArrayList <String>> değerini (String) alın(); Java
niçin sadece ilk 'List
Çünkü harita için giriş her zaman değil Dize –
Ham türleri kullandığınızda ne olur. – bcsb1001