目录
一.遍历集合里的每一个元素来作为参数执行某个方法
1.先创建一个类和一个方法:
foreachTest类作为用于遍历集合的类,printcontent作为用于遍历集合的方法。
<T>使用泛型,便于任何集合都能传递其元素到该类,该方法中。
class foreachTest<T>{//使用泛型便于任何集合都能传递参数
public void printcontent(T element){
System.out.println(element);//方法内容可以自己定义
}
}
2. 在main方法内进行测试:
public static void main(String[] args) {
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
// foreach()内 new 类名()::方法名,即可将该集合内的每个元素作为参数传递到该方法内执行其内容
list.forEach(new foreachTest()::printcontent);
// run后输出 1 2 3
}
2.1如果方法是静态方法,则通过 [ 类名::方法名 ] 调用即可 :
list.forEach(foreachTest::printcontent);
二. forEach(System.out::print)
集合.forEach(System.out::print) forEach(System.out::println) forEach(System.out::printf)
遍历输出集合里的每一个元素 相当于:
for(int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); }
public class test {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.forEach(System.out::print);//输出集合里的每一个值
// run 输出 1 2 3
}
}
三.forEach((e)->{})
集合.forEach() 里面是一个lambda表达式 像前端jsES6的箭头函数
将集合的每一个元素传递到lambda表达式执行相应功能
public class test {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.forEach((e) ->{//将集合里的每一个元素作为参数e传递到lambda表达式里执行相应功能
System.out.println(e);
});
// run 输出 1 2 3
}
}
总结
学习总结遇到的list.foreach(System.out::print) 等相关功能