所以我有一个HashMap内的ArrayList中如何检查一个字符串是否是一个HashMap
HashMap<String, ArrayList<String> gMap = new HashMap<String, ArrayList<String>();
当有人创建了一个组,组长添加到HashMap中的键,然后所有的组内用户添加到ArrayList
gMap.get(groupLeader).add(user);
我试图让这个只有班组长被允许邀请的球员,但如果一个球员是不属于任何团体的一部分,并邀请其他用户则组会自动创建,玩家将成为组长。
所以,通常我会只是这样做
for(ArrayList<String> list : gMap.values()){
if(list.contains(user)){
//do something since the player is not part of the list
}
}
但我不能这样做,因为可能有多个的ArrayList,所以即使用户没有一个ArrayList中的一部分,但这并不意味着他们不是活得在另一个里面。
所以我很好奇,我将如何检查所有的arrayLists,并做一些事情,只有当用户不属于他们中的任何一员。
获取所有'ArrayList'值并检查它们。看起来像你已经在做... –
遍历你的地图元素,然后搜索每个地图项的列表。 –
如果您关心性能和可伸缩性,您可能需要分别考虑播放器属于哪个组(如果有的话)。然后你在O(1)中得到你正在寻找的答案,但你将不得不处理同步问题。 – pamphlet