2017-04-02 5 views
0

Sur mon application Android J'utilise Multiset:Multiset <String> est montré vide sur Android

Multiset<String> multiset = HashMultiset.create(); 

Je veux le convertir en une méthode String à l'aide toString(). Le problème est que lorsqu'il s'agit d'un seul élément de chaque chaîne, il semble OK, mais lorsqu'il existe plusieurs chaînes avec le même texte, il est affiché comme [] au lieu de [A x 2, B, C x 3] par exemple.

Comment puis-je résoudre ce problème afin qu'il soit affiché comme ci-dessus au lieu de []?

+3

IIUYC vous affirmez que 'HashMultiset # toString' avec des chaînes est cassé. Je trouve cela extrêmement improbable car il a été testé et utilisé beaucoup. Je parie qu'il y a une erreur ailleurs, essayez de le reproduire dans un [SSCCE] (http://sscce.org/) et publiez-le. – maaartinus

Répondre

0

La façon la plus simple est de convertir Multiset-Set en appelant Multiset#elementSet méthode:

Set<String> set = multiset.elementSet(); 

Ensuite, il suffit d'appeler toString sur cette méthode pour obtenir le résultat souhaité.

+0

Mais je dois aussi obtenir des occurrences de chaînes multiples comme écrit dans ma question –

+1

Pouvez-vous écrire quelle version de Guava vous utilisez et ajouter du code, qui démontre ce problème? – pxsx