import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class LambdaTest {
public static void main(String[] args) {
int[] nums = {1, 2, 3, 4, 5};
System.out.println("testMap:");
testMap(nums);
System.out.println();
System.out.println("testFilter:");
testFilter(nums);
System.out.println();
System.out.println("testForeach:");
testForeach(nums);
System.out.println();
System.out.println("testReduce:");
testReduce(nums);
System.out.println();
System.out.println("testAnyAllNoneMatch:");
testAnyAllNoneMatch(nums);
System.out.println();
System.out.println("testDistinct:");
testDistinct(nums);
System.out.println();
System.out.println("testCollect:");
testCollect(nums);
System.out.println();
System.out.println("flatMap:");
flatMap();
System.out.println();
System.out.println("max:");
max(nums);
System.out.println();
System.out.println("min:");
min(nums);
}
public static void testMap(int[] nums) {
int[] doubled = Arrays.stream(nums)
.map(x -> x * 2)
.toArray();
Arrays.stream(doubled).forEach(x -> System.out.println(x));
}
public static void testFilter(int[] nums) {
int[] greaterThanThree = Arrays.stream(nums)
.filter(x -> x > 3)
.toArray();
Arrays.stream(greaterThanThree).forEach(x -> System.out.println(x));
}
public static void testForeach(int[] nums) {
Arrays.stream(nums).forEach(x -> System.out.println(x));
}
public static void testReduce(int[] nums) {
int sum = Arrays.stream(nums)
.reduce(0, (x, y) -> x + y);
System.out.println(sum);
}
public static void testAnyAllNoneMatch(int[] nums) {
boolean anyMatch = Arrays.stream(nums)
.anyMatch(x -> x == 1);
System.out.println(anyMatch);
}
public static void testDistinct(int[] nums) {
int[] distinct = Arrays.stream(nums)
.distinct()
.toArray();
Arrays.stream(distinct).forEach(x -> System.out.println(x));
}
public static void testCollect(int[] nums) {
List<Integer> list = Arrays.stream(nums)
.boxed()
.collect(Collectors.toList());
System.out.println(list);
}
public static void flatMap() {
int[][] nums = {{1, 2}, {3, 4}, {5, 6}};
int[] flattened = Arrays.stream(nums)
.flatMapToInt(Arrays::stream)
.toArray();
System.out.println(Arrays.toString(flattened));
}
public static void max(int[] nums) {
int max = Arrays.stream(nums)
.max()
.getAsInt();
System.out.println(max);
}
public static void min(int[] nums) {
int min = Arrays.stream(nums)
.min()
.getAsInt();
System.out.println(min);
}
}
```
```