将函数应用于收集集合上的所有元素

问题描述:

假设我们有一个集合集合,我们希望将函数应用于所有元素,那么您如何实现这一功能? 我知道答案错了,但它是正确的:将函数应用于收集集合上的所有元素

for (Collection<T> col : collection) 
if (col != null) 
for (T item : col) 
doSomething(item); 
+3

再说你的问题:我强烈建议您使用{}任何循环,如果,无论。你看 - 人们常常这么想:“嘿,这只是一个声明,我不需要愚蠢的......”然后5个月后,你添加了第二个声明,你不注意,并wooosh,有些事情是错的。 – GhostCat 2015-03-08 17:07:06

+0

@EddyG:这是一个空循环的好主意。这只是愚蠢的冗长,否则。只需使用适当的格式。 – Deduplicator 2015-03-08 23:23:01

你这样做完全像你在你的例子做。

(甚至检查itemnull如果可以null如果doSomething预计它的参数是不null。)

+0

你不能使用增强for循环。你可以吗? – 2015-03-08 17:03:53

+0

@KickButtowski是的,你可以,为什么你不能? – emlai 2015-03-08 17:04:44

+0

我想如果你想对你的集合做任何改变,如果你需要使用迭代器而不是增强for循环或者可能是我的问题是错误的? – 2015-03-08 17:09:50