将 object 视为 Java 中的可迭代对象的最佳方式是什么?
What is the best way to treat an object like an iterable in Java?
将单个 object 视为可迭代的最佳方法是什么?
例如,在下面的情况下...
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 函数(创建最少的 trash/gets 清理最快)。
或者,正如问题标题所说,将 Object
传递给需要 Iterable<Object>
的函数的最佳方法是什么?
使用Collections.singleton(item)
将单个 object 视为可迭代的最佳方法是什么?
例如,在下面的情况下...
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 函数(创建最少的 trash/gets 清理最快)。
或者,正如问题标题所说,将 Object
传递给需要 Iterable<Object>
的函数的最佳方法是什么?
使用Collections.singleton(item)