如何从Set中获取元素?

时间:2013-11-05 20:08:10

标签: java set

我的Java程序中有Set<Integer>,保证非空。我想从这个集合中检索一个整数。我不关心哪个整数,我只需要一些整数,确定性或非确定性地从集合中选择,只要它在集合中。这样做的最佳方式是什么?

4 个答案:

答案 0 :(得分:8)

为什么不采取第一个元素?

return set.iterator().next();

如果它保证非空,并且你不关心你检索哪个元素,这听起来就像它一样简单。

答案 1 :(得分:1)

有几种方法。一个是致电iterator()。然后拨打Iterator上的next()

或者,您可以调用toArray然后调用该数组中的元素(受其大小限制)。

答案 2 :(得分:1)

private Integer getIntegerFromSet(Set<?> set) {

    Integer integerToReturn = null;

    if (set != null && !set.isEmpty()) {

        for (Object o : set) {

            if (o instanceof Integer) {

                integerToReturn = (Integer) o;
                break;
            }
        }
    }

    return integerToReturn;
}

我总是检查是否为null,即使我“保证”我正在获得一个非空的,实例化的对象。此方法将接受Set的任何实现,遍历它,并检查任何对象是Integer的第一次出现。

答案 3 :(得分:0)

你可以简单地拿第一个元素吗?

int elem() {
    return set.toArray()[0]; 
}