Je voudrais savoir comment utiliser multimap dans Processing IDE.Multimap dans le traitement
Y a-t-il des bibliothèques que je peux utiliser?
Je dois ajouter plusieurs valeurs pour la même clé dans une carte.
Votre aide est grandement appréciée.
Je voudrais savoir comment utiliser multimap dans Processing IDE.Multimap dans le traitement
Y a-t-il des bibliothèques que je peux utiliser?
Je dois ajouter plusieurs valeurs pour la même clé dans une carte.
Votre aide est grandement appréciée.
Vous pouvez ajouter ci-dessous bibliothèque
http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/collect/Multimap.html
Multimap<String,Object> myMultimap = ArrayListMultimap.create();
public class MutliMapTest {
public static void main(String... args) {
Multimap<String, String> myMultimap = ArrayListMultimap.create();
// Adding some key/value
myMultimap.put("Fruits", "Bannana");
myMultimap.put("Fruits", "Apple");
myMultimap.put("Fruits", "Pear");
myMultimap.put("Vegetables", "Carrot");
// Getting the size
int size = myMultimap.size();
System.out.println(size); // 4
// Getting values
Collection<String> fruits = myMultimap.get("Fruits");
System.out.println(fruits); // [Bannana, Apple, Pear]
Collection<String> vegetables = myMultimap.get("Vegetables");
System.out.println(vegetables); // [Carrot]
// Iterating over entire Mutlimap
for(String value : myMultimap.values()) {
System.out.println(value);
}
// Removing a single value
myMultimap.remove("Fruits","Pear");
System.out.println(myMultimap.get("Fruits")); // [Bannana, Pear]
// Remove all values for a key
myMultimap.removeAll("Fruits");
System.out.println(myMultimap.get("Fruits")); // [] (Empty Collection!)
}
}
Vous pouvez télécharger ici
Multimap semble être une partie de la bibliothèque de collections communes Apache. Téléchargez le fichier zip qui le contient de here (commons-collections4-4.0-bin.zip) décompressez-le et prenez le fichier jar (commons-collections4-4.0.jar) à partir de là. Vous devez ensuite créer un dossier dans votre dossier d'esquisse appelé "code" et y mettre le pot ...!
Voici un exemple comment l'utiliser dans le traitement:
import java.util.Collection;
void setup() {
MultiMap mhm = new MultiValueMap();
mhm.put("Fruit", "Apple");
mhm.put("Fruit", "Banana");
mhm.put("Fruit", "Kiwi");
Collection coll = (Collection) mhm.get("Fruit");
for(Object o: coll) {
println(o);
}
}
... ou, vous n'avez pas besoin de l'importation si vous savez que vous ne mettre des chaînes comme valeurs:
void setup() {
MultiMap mhm = new MultiValueMap();
mhm.put("Fruit", "Apple");
mhm.put("Fruit", "Banana");
mhm.put("Fruit", "Kiwi");
ArrayList<String> coll = (ArrayList<String>) mhm.get("Fruit");
for(String o: coll) {
println(o);
}
}
... ou lancez le vôtre! Comme ceci:
// This essentially says that you want to create a map
// with keys of type String and values of type List of String
Map<String, List<String>> myMap = new HashMap<String,List<String>>();
// add a new ArrayList of Strings in the map:
myMap.put("Fruits",new ArrayList<String>());
// add Strings in the list:
myMap.get("Fruits").add("Apple");
myMap.get("Fruits").add("Banana");
Merci, Comment puis-je importer cette bibliothèque dans le traitement de l'EDI? – Hasala
Si vous utilisez 'Eclipse', ajoutez alors dans votre projet' lib' le dossier 'Processing IDE', je n'ai aucune connaissance. –
Ce lien de téléchargement a seulement quelques fichiers PDF. N'est-ce pas? Ne devrait-il pas y avoir de fichiers jar? L'ajout de libs dans Processing IDE est le même que dans Eclipse. – Hasala