我正在使用一个每个键有两个值的Multimap。下面是我用来分别获取每个值的代码:
代码的第一位获取第一个对象值:
for(Object object : map.get(object)) { return object }
然后,我正在使用另一种方法来检索其他值。此方法将第一个对象作为参数:
for(Object object : team.get(object)) { if(object != initialObject) { return object; } }
这似乎是一种“骇人的”做事方式,那么我有什么办法可以更轻松地获得价值?
Collection<Object> values = map.get(key); checkState(values.size() == 2, String.format("Found %d values for key %s", values.size(), key)); return values.iterator().next(); // to get the first Iterator<Object> it = values.iterator(); it.next(); // move the pointer to the second object return it.next(); // get the second object