4

我在客户端类中有一个从服务器收集数据并返回 HashMap 的方法。我想列出一个 android 对话框中的键。android API 要求数据必须是 CharSequence[] 的形式。据我所知,没有直接的方法可以转换这些数据类型。实现这一目标的最佳方法是什么?

下面是 hashmap 和 keyset 的声明和初始化:

Map <String, String> players = client.listPlayers();
Set<String> player_names = players.keySet();

这是 android Dialog 文档的链接。

注意:可以从 Set 中转换的 CharSequence 与 CharSequence[] 不同

任何帮助表示赞赏。

——肖恩·W。

4

1 回答 1

4
CharSequence[] player_names = players.keySet().toArray(new CharSequence[0]);

这告诉方法数组的类型,而不为元素分配任何空间。它将为您分配一个大小正确的数组。

如果您更喜欢自己分配真实数组:

CharSequence[] player_names = players.keySet().toArray(new CharSequence[players.size()]);
于 2010-11-12T03:16:26.590 回答