list.forEach(System.out::println);
怎么理解:
list.forEach(System.out::println); 是一个Java语句,用于遍历一个列表(例如,一个字符串列表)并对每个元素执行特定的操作。
逐个解析这个语句:
list.forEach:forEach 是Java 8中引入的一个方法,它属于 Iterable 接口。这意味着你可以对任何实现了 Iterable 接口的对象(例如,ArrayList、LinkedList等)使用 forEach 方法。这个方法接受一个 Consumer 接口的实例,该实例是一个函数式接口,它接受一个输入参数并无返回值。
System.out::println:这是Java中的方法引用。System.out::println 是对 System.out 对象的 println 方法的引用。更准确地说,这是对 System.out 对象的静态方法 println 的引用。这意味着我们可以用 System.out::println 来代替一个lambda表达式,该表达式接受一个参数并调用 System.out.println(参数)。
所以,list.forEach(System.out::println); 的意思是:对列表中的每个元素调用 System.out.println() 方法。这等价于下面的代码:
java
list.forEach(element -> System.out.println(element));
package com.kgc.day01.news;
import javax.xml.soap.Node;
import java.util.LinkedList;
import java.util.List;
/**
* @author: wjc
* @version:
* @datetime: 2023/12/20 20:23
* @desc:
*/
public class NewsMain {
public static void main(String[] args) {
String first = "华0问世";
String last = "美征关税";
String last1 = "美行税";
String last2 = "美";
// News news = new News(first, last);
// news.prFirst();
// news.prLast();
LinkedList<String> list = new LinkedList<>();
list.add(first);
list.add(last);
list.add(last);
list.add(last1);
list.addFirst(last2);
list.forEach(System.out::println); // 使用Lambda表达式打印每个元素
}
}