2013-06-13 1 views
0

Désolé pour la question de débutant, mais je ne l'ai jamais utilisé HashMaps avant, donc je suis un peu confusUtilisez hashmap pour vérifier si une chaîne est présente

Je tentais de faire quelque chose comme ceci basé sur un poste que j'ai vu ici

Je ne reçois pas exactement la valeur signifie (est le type par défaut pour la valeur d'un int?), donc je ne savais pas quoi faire? Je vais bien avec juste garder une valeur 0 ou 1 ou un booléen ou quelque chose. Puis-je simplement définir value3 = True ou value3 = 1? Et si j'utilise map.get, est-ce que c'est la valeur? (vraisemblablement) Donc si j'utilisais 0/1 je voudrais vérifier si (value3! = 1)? Merci!

HashMap map = new HashMap(); 
Object value3 = map.get("something_${blablabla}"); 

    if (value3 == null) { 

     value3 = createValue("something_${row[blablabla]}"); 
     map.put("something_${row[blablabla]}", value3); 
+0

Vous voulez un hachage ** ** définir. – SLaks

+0

donc je devrais utiliser contient et ajouter? – Lemonio

+0

L'ensemble a la méthode add() qui renvoie true ou false. Voir ma réponse ci-dessous. –

Répondre

0

Si vous voulez vraiment stocker une valeur significative sur votre clé, vous devez utiliser HashMap. Mais, si vous voulez juste stocker les clés uniques et ne sont pas préoccupés par les valeurs, alors vous devriez aller pour HashSet. Il va stocker les clés uniques. Et sa méthode add() retournera vrai ou faux selon que la valeur existe déjà ou non.

+0

je vois, donc quelque chose comme .. HashSet itemset = new HashSet(); booléen présent = itemset.add ("quelquechose _ $ {blablabla}"); si (présent == faux) {(l'élément n'était pas présent) do blank blank – Lemonio

+0

Oui. C'est exactement ce que je voulais dire. –

0

Pensez une carte comme un dictionnaire: vous avez un mot (clé) et une description/traduction (valeur). Donc, si vous cherchez une valeur cenrtain, vous faites simplement map.get (clé) et vous obtenez une valeur.

Mais si vous voulez juste savoir si une clé existe, mais la valeur est importante, vous devez utiliser un ensemble, pas une carte

Questions connexes