将单个对象视为可迭代的最佳方法是什么?
例如,在以下情况中......
public void fun(Object o) {
fun(new TempList(o));
}
public void fun(Iterable<Object> os) {
try {
for(Object o : os)
// Write to server
System.out.println(o);
} catch(Exception e) {
// log e
}
}
更新:
重写这一部分。
一个已经存在的函数,它接受可迭代的事物并处理它们(fun(Iterable<Object> os)
)。我正在为此函数添加一个别名,而不是单个项目(fun(Object o)
)。这个函数将被不同的实例调用很多,所以我想要用资源最有效的方法用一个项来调用Iterable函数(无论什么创建垃圾桶/得到最少的垃圾)。
或者,正如问题标题所示,将Object
传递给需要Iterable<Object>
的函数的最佳方式是什么?
答案 0 :(得分:2)
使用Collections.singleton(item)
答案 1 :(得分:2)