0
votes

Collections Java, utilisez Arbreset comme valeur pour Treemap

J'aimerais créer une collection de données à l'aide d'une implémentation de Treemap avec une chaîne en tant que clé et une extrémité comme valeur triée avec une instance MyComparator. Il ne peut pas contenir de valeurs en double, d'où le TREEMAP.

private TreeMap<String, TreeSet<String>> tree_map = null;

public constructorTreeMap() {
    tree_map = new TreeSet<String>()new MyComparator();


0 commentaires

3 Réponses :


0
votes

J'espère que l'exemple suivant efface les choses un peu:

TreeMap<String, Set<String>> treeMap = new TreeMap<String, Set<String>>();


3 commentaires

Ne vous répétez pas vous-même, écrivez simplement Treemap > Treemap = neuf Treemap <> (); c'est possible depuis Java 7. Depuis Java 8, vous pouvez utiliser des instructions telles que Java 8. Code > Treemap.computeifabsent ("Votre clé de chaîne", clé -> Nouvel arbreset <> (myComparator)). Ajouter ("FOO");


@Holger, merci! Beaucoup apprécié, une question F-up: comment récupérez-vous les valeurs en fonction de la clé?


@ Jeffrey01 dépend de ce que vous voulez faire avec cela. Un simple arbreset s = Treemap.get (Sommeille); pourrait faire.



0
votes

Votre code a quelque chose qui ne va pas en termes de syntaxe. Cela devrait être quelque chose comme ça:

if (tree_map.get("foo") == null) { //null check and fill only if necessary
    tree_map.put("foo", new TreeSet<>());
}
tree_map.get("foo").add("foo-foo");


0 commentaires

0
votes

Tout d'abord, vous instaniez le TREEMAP:

map.put("key", set);


0 commentaires