Java8中内置的四大核心函数式接口
来源:互联网 发布:java执行sql语句 编辑:程序博客网 时间:2024/06/06 18:47
package com.expgiga.Java8;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.function.Consumer;import java.util.function.Function;import java.util.function.Predicate;import java.util.function.Supplier;/** * Java8内置的四大核心函数式接口 * * 1.Consumer<T>:消费型接口 * void accept(T t); * 2.Supplier<T>:供给型接口 * T get(); * 3.Function<T, R>:函数型接口 * R apply(T t); * 4.Predicate<T>:断言型接口 * boolean test(T t); */public class TestLambda3 { public static void main(String[] args) { //Consumer<T>消费型接口 happy(10000, (m) -> System.out.println("Play Game!: " + m + " yuan")); //Supplier<T> List<Integer> numList = getNumList(10, () -> (int) (Math.random() * 100)); for (Integer num : numList) { System.out.println(num); } //Function<T, R>函数型接口 String newStr = strHandler("\t\t\t 你牛逼 ", (str) -> str.trim()); System.out.println(newStr); String subStr = strHandler("我也牛逼,大家都牛逼", (str) -> str.substring(2, 5)); System.out.println(subStr); //Predicate<T> 断言型接口 List<String> list = Arrays.asList("Hello", "you", "me", "Java", "Scala"); List<String> newlist = filterStr(list, (s) -> s.length() > 3); for (String str : newlist) { System.out.println(str); } } private static void happy(double money, Consumer<Double> con) { con.accept(money); } //需求:产生一些整数,并放入集合中 private static List<Integer> getNumList(int num, Supplier<Integer> sup) { List<Integer> list = new ArrayList<>(); for (int i = 0; i < num; i++) { Integer n = sup.get(); list.add(n); } return list; } //需求:用于处理字符串 private static String strHandler(String str, Function<String, String> fun) { return fun.apply(str); } //需求:将满足条件的字符串放入集合中去 private static List<String> filterStr(List<String> list, Predicate<String> predicate) { List<String> strList = new ArrayList<>(); for (String str : list) { if (predicate.test(str)) { strList.add(str); } } return strList; }}
阅读全文
0 0
- Java8中内置的四大核心函数式接口
- Java8新特性_四大内置核心函数式接口
- Java8的四大核心函数式接口
- Java8的四大核心函数式接口
- Java8新特性(内置的核心函数式接口)
- 四大内置核心函数式接口
- java8的内置函数式接口总结
- java8内置四大函数
- java8内置函数式接口
- Java8内置函数式接口
- java8 四个核心函数式接口
- JDK8-四大核心函数式接口(三)
- Java8内置4大函数式接口详解
- java8中几个函数式接口的小例子
- Java8:函数式接口
- 第二十三讲 JDK8的foreach与Consumer接口、四大核心函数式接口、Stream接口、队列与栈
- java8提供的简单函数式接口
- Java8自定义带泛型的函数式接口
- BZOJ 1951 lucas定理 中国剩余定理
- A Knight's Journey
- 继承和多态
- GAWK 学习:AWK 语言基础
- 使用回调函数实现一个简单的计算器;
- Java8中内置的四大核心函数式接口
- [挖坑][uoj]多项式乘法 FFT
- JZOJ2017.08.05 C组
- 【凸包 Graham法 极角排序】poj 2007 Scrambled Polygon
- 1.在win10中搭建Java环境
- 练习 2-6 编写一个函数 setbits(x, p, n, y),该函数返回对x执行下列操作后的结果值:将x中从第p位开始的n个(二进制)位设置为y中最右边n位的值,x的其余各位保持不变。
- PHP基础教程-12 课后作业02
- Maximum GCD 读入
- 关于listview或者recyclerview里面的edittext数据保存问题