当前位置: 首页 > news >正文

网站建设的重要性与价值网络营销策划实训个人总结

网站建设的重要性与价值,网络营销策划实训个人总结,网站开发 xmind,佛山搭建建网站哪家好函数式接口 函数式接口函数式接口概述函数式接口作为方法的参数函数式接口作为方法的返回值 常用的函数式接口Supplier接口Comsumer接口Predicate接口Function接口 函数式接口 函数式接口概述 有且仅有一个抽象方法的接口 是lambda表达式的前提 需要注意的是 默认方法不是抽… 函数式接口 函数式接口函数式接口概述函数式接口作为方法的参数函数式接口作为方法的返回值 常用的函数式接口Supplier接口Comsumer接口Predicate接口Function接口 函数式接口 函数式接口概述 有且仅有一个抽象方法的接口 是lambda表达式的前提 需要注意的是 默认方法不是抽象方法因为它们已经实现了。重写了超类Object类中任意一个public方法的方法并不算接口中的抽象方法。 Java中的函数式编程体现的就是Lambda表达式所以函数式接口就是可以适用于Lambda使用的接口。只有确保接口中有且仅有一个抽象方法Java中的lambda才能顺利地进行推导 public interface MyInterface{void show(); }public class MyInterfaceDemo{public static void main(String[] args){MyInterface my()-System.out.println(函数式接口);my.show();} }如何检测一个接口是不是函数式接口 FunctionalInterface放在接口定义的上方如果是函数式接口编译通过不是则编译失败 注意 自己定义函数式接口的时候**FunctionalInterface**是可选的只要满足函数式接口的条件不写也是但是建议加上这个注解。 函数式接口作为方法的参数 需求 定义一个类RunnableDemo在类中提供两个方法 一个方法是startThread(Runnable r) 方法参数Runnable是一个函数式接口一个方法是主方法在主方法中调用startThread方法 public class RunnableDemo{public static void main(String[] args){//匿名内部类的方式startThread(new Runnable(){Overridepublic void run(){System.out.println(Thread.currentThread().getName()线程启动了);}});//Lambda表达式改进startThread(()-System.out.println(Thread.currentThread().getName()线程启动了));}private static void startThread(Runnable r){//Thread tnew Thread(r);//t.start();new Thread(r).start();} }如果方法的参数是一个函数式接口可以使用Lambda表达式作为参数传递 startThread(()-System.out.println(Thread.currentThread().getName()“线程启动了”)); 函数式接口作为方法的返回值 需求 定义一个类ComparatorDemo在类中提供两个方法 一个方法是ComparatorStringgetComparator() 方法的返回值是Comparator是一个函数式接口一个方法是主方法在主方法中 调用getComparator方法 public class ComparatorDemo{public static void main(String[] args){//构造使用场景//定义集合存储字符串元素ArrayListString arraynew ArrayListString ();array.add(c);array.add(aaa);array.add(bb);System.out.println(排序前:array);Collections.sort(array, getcomparator()) ;System.out.println(排序后:array);}public static ComparatorString getComparator(){//匿名内部类的方式实现 // ComparatorString compnew ComparatorString(){ // Override // public int compare(String s1,String s2){ // return s1.length()-s2.length(); // } // }; // return comp;// return new ComparatorString(){ // Override // public int compare(String s1,String s2){ // return s1.length()-s2.length(); // }//lambda表达式 // return (String s1,String s2)-{ // return s1.length()-s2.length(); // }; // }return (s1,s2)- return s1.length()-s2.length();}} }如果方法的返回值是一个函数式接口可以使用lambda表达式作为结果返回 常用的函数式接口 Supplier接口 Supplier:包含一个无参的方法 T get():获得结果该方法不需要参数它会按照某种实现逻辑(由Lambda表达式实现)返回一个数据supplier接口也被称为生产型接口如果我们指定了接口的泛型是什么类型那么接口中的get方法就会生产什么类 型的数据供我们使用 public class SupplierDemo{public static void main(String[] args){ // String sgetString(()-{ // return 伦伦; // });String sgetString(()-伦伦);System.out.println(s);Integer igetInteger(()-30);System.out.println(i);}//定义一个方法返回一个字符串数据private static String getString(SupplierString sup){return sup.get();}//定义一个方法返回整数数据private static Integer getInteger(SupplierInteger sup){return sup.get();} }Comsumer接口 Consumer:包含两个方法 void accept(T t):对给定的参数执行此操作default Consumer andThen(Consumer after): 返回一个组合的Consumer依次执行此操作然后执行after操作 public class ConsumerDemo{public static void main(String[] args){ // operatorString(伦伦,(String s)-{ // System.out.println(s); // });operatorString(伦伦,s-System.out.println(s));//方法引用改进operatorString(伦伦,System.out::println);operatorString(Y伦伦,(s)-{System.out.println(new StringBuilder(s).reverse().toString());});//优化operatorString(Y伦伦,s-System.out.println(new StringBuilder(s).reverse().toString()));System.out.println(----------);operatorString(Y伦伦,s-System.out.println(s),s-System.out.println(new StringBuilder(s).reverse().toString()));}//定义一个方法消费字符串数据private static void operatorString(String name,ConsumerString con){con.accept(name);}//定义一个方法用不同的方式消耗同一个字符串两次private static void operatorString(String name,ConsumerString con1,ConsumerString con2){ // con1.accept(name); // coo2.accept(name);//改进con1.andThen(con2).accept(name);} }Predicate接口 Predicate:常用的四个方法 boolean test(T t):对给定的参数进行判断(判断逻辑由Lambda表达式实现)返回一个布尔值default Predicatenegate: 返回一个逻辑的否定对应逻辑非defaultPredicateand(Predicateother): 返回一个组合判断对应短路与default Predicate or(Predicate other): 返回一个组合判断对应短路或Predicate接口通常用于判断参数是否满足指定的条件 public class PredicateDemo01{public static main(String[] args){boolean b1checkString(Hello,s-return s.length()8);System.out.println(b1);boolean b2checkString(HelloWorld,s-return s.length()8);System.out.println(b2);}private static boolean checkString(String s,PredicateString pre){return pre.test(); } }Function接口 FunctionT,R:常用的两个方法 R apply(T t):将此函数应用于给定的参数default Function andThen(Function after): 返回一个组合数首先将该函数应用于输入然后将after函数应用于结果FunctionT,R接口通常用于对参数进行处理转换(处理逻辑由Lambda表达式实现)然后返回一个新的值 class FunctionDemo{public static main(String[] args){String s伦伦,25;covert(s,ss-{ss.split(,)[1]},ss-Integer::parseInt,i-i100);}private static void covert(String s,FunctionString,String fun1,FunctionString ,Integer fun2,FunctionInteger,Integer fun3){int ifun1.abdThen(fun2).andThen(fun3).apply(s);System.out.println(i);} }
http://www.zqtcl.cn/news/272664/

相关文章:

  • flash网站代做马鞍山网站建设制作公司
  • 温州网站的优化wordpress 注册邮箱验证失败
  • php网站开发实例视频教程宁波seo运营推广平台排名
  • 网络营销网站开发设计公司网站推广营销
  • 2015年做那个网站致富wordpress最新模板
  • 做网站开发平台北京广告公司有哪些
  • 郑州企业建站系统模板兰州需要做网站的公司有哪些
  • 怎样做网站卖东西 自己有货句容网络公司
  • 网站建设协议书 保密条款免费发布推广的网站
  • 网站首页外链上海网站建设联系方式
  • 陕西网站建设优化技术2023年1月热点新闻事件
  • 广东省建设银行招聘网站免费搭建个人网站
  • 知名商城网站建设公司wordpress主题 汉化
  • 网站上线做什么pc网站如何做移动适配
  • wap网站搭建北京北京网站建设
  • 放心的网站设计制作免费做logo设计的网站
  • 温州专业手机网站制作多少钱移动商城 网站建设方法方式
  • 周口网站开发wordpress
  • 如何查网站的备案号玉环在哪里做网站
  • 网站开发什么叫前端后端seo研究中心晴天
  • 邢台建筑类的建设网站代刷网站只做软件下载
  • 关于旅游的网站建设目的食品网站建设的目的
  • 开发php网站开发太湖网站建设推荐秒搜科技
  • 90设计网站怎么绑定手机号淘宝搜索排名
  • 无锡自助做网站哪些编程语言适合网站开发
  • 蒲城网站建设wzjseo北京专业推广公司
  • 阳春做网站外贸建站推广公司
  • 哪个网站的课件做的好源码之家关闭了
  • 各大网站热搜榜排名嵊州网站
  • 在哪找做网站的镇江网页设计工作室