Skip to content

Commit d258bb2

Browse files
committed
'完成第五部分'
1 parent fff8cba commit d258bb2

File tree

3 files changed

+65
-7
lines changed

3 files changed

+65
-7
lines changed

src/main/java/lambdasinaction/chap4/StreamBasic.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package lambdasinaction.chap4;
22

33
import java.util.*;
4+
import java.util.function.Function;
45
import java.util.stream.*;
56

67
import static java.util.Comparator.comparing;
@@ -10,7 +11,7 @@
1011

1112
public class StreamBasic {
1213

13-
public static void main(String...args){
14+
public static void main(String... args) {
1415
// Java 7
1516
getLowCaloricDishesNamesInJava7(Dish.menu).forEach(System.out::println);
1617

@@ -21,26 +22,26 @@ public static void main(String...args){
2122

2223
}
2324

24-
public static List<String> getLowCaloricDishesNamesInJava7(List<Dish> dishes){
25+
public static List<String> getLowCaloricDishesNamesInJava7(List<Dish> dishes) {
2526
List<Dish> lowCaloricDishes = new ArrayList<>();
26-
for(Dish d: dishes){
27-
if(d.getCalories() < 400){
27+
for (Dish d : dishes) {
28+
if (d.getCalories() < 400) {
2829
lowCaloricDishes.add(d);
2930
}
3031
}
3132
List<String> lowCaloricDishesName = new ArrayList<>();
3233
Collections.sort(lowCaloricDishes, new Comparator<Dish>() {
33-
public int compare(Dish d1, Dish d2){
34+
public int compare(Dish d1, Dish d2) {
3435
return Integer.compare(d1.getCalories(), d2.getCalories());
3536
}
3637
});
37-
for(Dish d: lowCaloricDishes){
38+
for (Dish d : lowCaloricDishes) {
3839
lowCaloricDishesName.add(d.getName());
3940
}
4041
return lowCaloricDishesName;
4142
}
4243

43-
public static List<String> getLowCaloricDishesNamesInJava8(List<Dish> dishes){
44+
public static List<String> getLowCaloricDishesNamesInJava8(List<Dish> dishes) {
4445
return dishes.stream()
4546
.filter(d -> d.getCalories() < 400)
4647
.sorted(comparing(Dish::getCalories))
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package lambdasinaction.chap5;
2+
3+
import java.util.Arrays;
4+
import java.util.List;
5+
import java.util.function.Function;
6+
import java.util.stream.Collectors;
7+
import java.util.stream.Stream;
8+
9+
import static java.util.stream.Collectors.toList;
10+
11+
/**
12+
* @author vector
13+
* @date: 2018/9/29 0029 15:48
14+
*/
15+
public class Demo522 {
16+
public static void main(String[] args) {
17+
List<String> hw = Arrays.asList("Hello", "World");
18+
List<String> collect = hw.stream().map(word -> word.split("")).flatMap(Arrays::stream).distinct().collect(toList());
19+
System.out.println(collect);
20+
}
21+
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package lambdasinaction.chap5;
2+
3+
import java.util.*;
4+
import java.util.stream.Collectors;
5+
6+
import static java.util.Comparator.comparing;
7+
import static java.util.stream.Collectors.joining;
8+
import static java.util.stream.Collectors.toList;
9+
10+
/**
11+
* @author vector
12+
* @date: 2018/9/29 0029 16:48
13+
*/
14+
public class Demo551 {
15+
public static void main(String[] args) {
16+
List<Transaction> list = new ArrayList<>();
17+
List<Transaction> list1 = list.stream().filter(item -> item.getYear() == 2011).sorted(comparing(Transaction::getValue)).collect(toList());
18+
19+
Set<String> set2 = list.stream().map(item -> item.getTrader().getCity()).collect(Collectors.toSet());
20+
21+
List<Trader> list3 = list.stream().map(Transaction::getTrader).filter(item -> item.getCity().equals("剑桥")).distinct().sorted(comparing(Trader::getName)).collect(toList());
22+
23+
String collect4 = list.stream().map(item -> item.getTrader().getName()).distinct().sorted().collect(joining());
24+
25+
boolean boolean5 = list.stream().anyMatch(item -> item.getTrader().getCity().equals("米兰"));
26+
27+
list.stream().filter(item->item.getTrader().getCity().equals("剑桥")).map(Transaction::getValue).forEach(System.out::println);
28+
29+
Optional<Integer> first7 = list.stream().map(Transaction::getValue).sorted(Integer::compareTo).limit(1).findFirst();
30+
31+
list.stream().min(comparing(Transaction::getValue));
32+
33+
34+
35+
}
36+
}

0 commit comments

Comments
 (0)