Java: Quelle est la structure de données à utiliser pour imiter les tableaux associatifs de PHP?

StackOverflow https://stackoverflow.com/questions/1535432

Question

Je veux une structure de données qui me permet à la carte des valeurs clés, comme les tableaux associatifs de PHP. Chaque clé ne peut exister une fois, mais une valeur peut être mis en correspondance avec un certain nombre de clés. Qu'est-ce que je cherche? Quelque chose dans les communes Google Collections?

Était-ce utile?

La solution

Le Map la structure est ce que vous vouloir. Une bonne mise en œuvre est HashMap.

Ce type de données ne permet pas la même valeur pour la clé, mais vous pouvez avoir autant de valeurs en double que vous le souhaitez.

Exemple d'utilisation:

Map<String, String> map = new HashMap<String, String>();
map.put("FirstName", "LastName");

System.out.println(map.get("FirstName")); // Prints 'LastName'
System.out.println(map.put("FirstName", "Foo")); // Prints 'LastName'
System.out.println(map.get("FirstName")); // Prints 'Foo'

En d'autres termes, la clé ne peut exister qu'une seule fois. Sinon, la valeur est écrasée.

Autres conseils

Vous cherchez un HashMap , comme un HashMap<K,V> . Les anciennes cartes Objets d'objets, et les dernières cartes types de votre choix (comme les autres médicaments génériques).

Quel est le problème avec HashMap régulier? Si vos valeurs sont des chaînes que vous obtiendrez le comptage de référence gratuit et si vous avez besoin de se référer à une instance particulière d'objet juste n'allouez pas, mais utilisez la référence existante

HashMap est la voie à suivre pour vous. Je considère en fait les choses dans l'autre sens quand je commencé à coder en PHP. Je me demandais, comment puis-je mettre un HashMap? Ensuite, je découvre les tableaux associatifs.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top