0

我需要在一个Set. 有时我想遍历 中的所有内容,有时我只想遍历Set实现特定接口的所有内容。一些对象将实现我想要查看的几个接口。

是否有设计模式或 Guava/Java 类允许在一个Set或其他集合上按类型查看?最好以最有效的方式,因为此代码将成为每 17 毫秒调用一次的核心游戏循环的核心。

4

2 回答 2

7

用番石榴——

Sets.filter(set, Predicates.instanceOf(Foo.class));
于 2012-09-23T14:30:11.693 回答
0

您是否考虑过将对象保存在哈希表中?

Hashtable<String,Set<YourObject>> ht = new Hashtable<String,Set<YourObject>>();

其中 String 是类型名称。这样您就可以选择要迭代的内容。

于 2012-09-23T14:16:12.380 回答