普通方式和行为参数化方式
public class ProcessFileDemo {
public static void main(String[] args) throws IOException {
String line = processFile();
System.out.println("readline "+line);
String lambdaLine = processFileLambda((BufferedReader br)->br.readLine());
System.out.println("lambdaLine "+lambdaLine);
String lambdaLineV2 = processFileLambda((BufferedReader br)->br.readLine()+br.readLine());
System.out.println("lambdaLineV2 "+lambdaLineV2);
}
public static String processFile() throws IOException{
try (BufferedReader br = new BufferedReader(new FileReader("stopwords.txt"))){
return br.readLine();
}
}
public static String processFileLambda(BufferedReaderProcessor p) throws IOException{
try( BufferedReader br = new BufferedReader(new FileReader("stopwords.txt"))){
return p.process(br);
}
}
}
@FunctionalInterface
public interface BufferedReaderProcessor {
String process(BufferedReader b) throws IOException;
}
版权声明:本文为weixin_41725862原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。