我是Java 8Streams和Collectors类的新手 。
我正在读取一个文件,其内容需要保存在一个LinkedHashMap<Integer, String>位置,该<keys>位置是文件的行号,并且它<values>是每一行的内容。
在这里,我想使用这个Stream概念,但是我不能使用Collectors.toMap来自动增加<keys>需要保存在LinnkedHashMap对象中的。取而代之的是,我得到了例外。
以下是我正在尝试的代码:
List<String> list = new ArrayList<>();
Integer count = 0;
try (BufferedReader br = Files.newBufferedReader( Paths.get( fileName ) )) {
// br returns as stream and convert it into a List
list = br.lines().collect( Collectors.toList() );
}
catch ( IOException e ) {
e.printStackTrace();
}
list.forEach( System.out::println );
Map<Integer, String> fileNumWithContentMapper = list.stream()
.collect( Collectors.toMap( n->n+1,s1->s1));
子衿沉夜
相关分类