Est-il un moyen de récupérer la valeur d'une HashMap au hasard en Java?

Est-il un moyen de récupérer la valeur d'une HashMap au hasard en Java?

  • Pourquoi avez-vous besoin de cela? Si c'est autre chose que du test, vous utilisez la mauvaise structure de données. Si c'est pour le test, vous ne voulez probablement pas de données aléatoires.
  • Voir ma réponse ci-dessous -- la manière appropriée de le faire, cela dépend un peu de votre situation (notamment la manière dont de nombreux éléments aléatoires vous avez besoin par le changement de la carte).
  • Si vous voulez quelque chose d'efficace, de prendre un coup d'oeil à ma réponse: stackoverflow.com/questions/9919734/... tables de hachage sont, en principe, une grande structure pour l'accès à des éléments aléatoires. Il est malheureux que l'api Java ne nous donne pas un moyen facile de le faire.
  • salut, je sais que c'est un vieux thread, mais je me demande pourquoi vous dites sa la mauvaise structure de données pour un accès aléatoire? Merci
  • HashMaps sont conçus pour être accessibles par la touche plutôt que de valeur. Il y a utilise pour bidirectionnelle mappages, mais vous devez choisir une classe conçu à cet effet et de ne pas essayer la force HashMap à faire quelque chose qu'il n'a pas été conçu pour faire.
InformationsquelleAutor Varuna | 2009-05-30