軟件測試技術交流羣 : 429183023
Java 8新增的Lambda表達式,我們可以很方便地並行操作大集合,
剛剛接觸java8,Lambda還是挺好用的,目前接觸的也不多,給大家舉幾個例子(後續有關於Lambda的補充也會繼續更新此篇博客)
廢話不多說,咱們直接進入例子
1、利用stream().forEach()循環處理List;
List<String> list = Lists.newArrayList();//新建一個List 用的google提供的Guava package com.google.common.collect;
list.add("1");
list.add("2");
list.add("3");
list.stream().forEach(string ->{
System.out.println(string);
});
運行結果:
1
2
3
2、利用stream().map()處理List,並給另外一個List賦值:
List<String> list1 = Lists.newArrayList();
List<String> list2 = Lists.newArrayList();
list1.add("1");
list1.add("2");
list1.add("3");
list2 = list1.stream().map(string -> {
return "stream().map()處理之後:" + string;
}).collect(Collectors.toList());
list2.stream().forEach(string -> {
System.out.println(string);
});
運行結果:
stream().map()處理之後:1
stream().map()處理之後:2
stream().map()處理之後:3
3、利用stream().filter()處理List,對該List進行過濾處理:
List<String> list1 = Lists.newArrayList();
List<String> list2 = Lists.newArrayList();
list1.add("1");
list1.add("1");
list1.add("2");
list1.add("3");
list2 = list1.stream().filter(s -> !s.equals("1")).collect(Collectors.toList());
System.out.println(list2.toString());
運行結果:
[2, 3]