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

母婴会所网站建设东莞网站seo优化托管

母婴会所网站建设,东莞网站seo优化托管,怎么建设一个电影网站,如何网站推广Lambda表达式 简介 Lambda是一个匿名函数(方法), 允许把函数作为一个方法的参数 。利用Lambda表达式可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使Java的语言表达能力得到了提升。一般都是优化匿名内部类 基础语法 无参数、无返回值的抽…

Lambda表达式

简介

Lambda是一个匿名函数(方法), 允许把函数作为一个方法的参数 。利用Lambda表达式可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使Java的语言表达能力得到了提升。一般都是优化匿名内部类

基础语法

无参数、无返回值的抽象方法

public class Test1 {@Testpublic void test01() {
//		I1 i1 = new I1() {
//			@Override
//			public void method() {
//				System.out.println("传统使用匿名内部类的方式");
//			}
//		};
//		i1.method();I1 i1 = ()-> System.out.println("采用Lambda表达式的方式");i1.method();}
}
interface I1{public void method();//无参数、无返回值的抽象方法
}

一个参数、无返回值的抽象方法

public class Test1 {@Testpublic void test01() {I1 i1 = (x)-> System.out.println("采用Lambda表达式的方式 " + x);i1.method(1000);}
}
interface I1{public void method(int num1);//一个参数、无返回值的抽象方法
}

多个参数、无返回值的抽象方法

public class Test1 {@Testpublic void test01() {I1 i1 = (x,y,z)-> System.out.println("采用Lambda表达式的方式 " + x + y + z);i1.method(1000,2000,3000);}
}
interface I1{//多个参数、无返回值的抽象方法public void method(int num1,int num2,int num3);
}

多个参数、有返回值的抽象方法

public class Test1 {@Testpublic void test01() {I1 i1 = (x,y,z)-> x+y+z;int result = i1.method(1000,2000,3000);System.out.println(result);}
}
interface I1{//多个参数、有返回值的抽象方法public int method(int num1,int num2,int num3);
}
注意点
  1. 重写方法的形参只有一个时,可以不加小括号
  2. Lambda表达式当中不允许声明一个与局部变量同名的参数或者局部变量
  3. Lambda表达式中访问外层的局部变量,外层的局部变量自动变成隐式常量,默认添加final
  4. 重写方法的形参同时加类型或同时不加类型
public class Test1 {@Testpublic void test01() {int x;int num = 10;I1 i1 = x -> System.out.println(x + (num++));i1.method(1000);I2 i2 = (int x,int y) -> {int result = x+y;return result;};int result = i2.method(10, 20);System.out.println(result);}
}
interface I1{public void method(int num1);
}
interface I2{public int method(int num1,int num2);
}
练习
  1. 调用Collections.sort()方法,通过定制排序比较两个Student对象(先按年龄比较,年龄相同按照薪资比较),使用Lambda表达式作为参数传递
public class Test1 {@Testpublic void test01() {List<Student> stuList = Arrays.asList(new Student("张三", 28, 4800,Course.JAVA),new Student("李四", 36, 7200,Course.JAVA),new Student("王五", 19, 9600,Course.HTML),new Student("赵六", 42, 6100,Course.HTML),new Student("孙七", 23, 9600,Course.PYTHON),new Student("吴八", 31, 3000,Course.PYTHON));Collections.sort(stuList, (a,b)-> {if(a.getAge() == b.getAge()){return Double.compare(a.getSalary(),b.getSalary());}return a.getAge()-b.getAge();});for (Student stu : stuList) {System.out.println(stu);}}
}
enum Course{//课程枚举JAVA,HTML,PYTHON;
}
class Student{//学生类private String name;private int age;private double salary;private Course course;...
}
  1. 创建I1接口,创建抽象方法:public String getValue(String str),在测试类中编写方法使用接口作为参数,将一个字符串转为大写,并作为方法的返回值
public class Test1 {@Testpublic void test01() {String strHandler = strHandler("abc", x-> x.toUpperCase());System.out.println(strHandler);}public static String strHandler(String str,I1 i1){return i1.getValue(str);}
}
interface I1{public String getValue(String str);
}
  1. 创建I1<T,R>接口,泛型T为参数,R为返回值,创建抽象方法:public R add(T t1,T t2),在测试类中编写方法使用接口作为参数,计算两个long类型的和
public class Test1 {@Testpublic void test01() {Long addLong = addLong(100L, 200L, (x,y)-> x+y);System.out.println(addLong);}public static Long addLong(Long l1,Long l2,I1<Long,Long> i1){return i1.add(l1, l2);}
}
interface I1<T,R>{public R add(T t1,T t2);
}

http://www.yayakq.cn/news/668244/

相关文章:

  • 做网站 域名如何要回群晖nas做网站
  • 山东青岛网站制作有什么网站可以做初中试题
  • 一个人完成网站建设网站搭建设计范文
  • 国外简洁的网站阿里网站怎么做
  • 房天下网站建设wordpress拖动
  • 河南网站建设制作wordpress 取消自适应
  • 基于营销导向的企业网站建设研究网站的策划建设方案书
  • 公司做网站有意义么服装外贸流程
  • 品牌推广网站怎样做百度网站排名优化价格
  • 怎么做韩剧网站的翻译品牌建设网站例子
  • 台州网站制作策划亚马逊全球开店
  • 开一家网站建设公司wordpress如何登陆
  • 做网站用什么开发工具自己的网站怎么赚钱
  • 说明电子商务网站的建设流程wordpress培训机构
  • 大蒜做营销型网站山东省建设厅职业资格注册中心网站
  • 个人主页类网站开发背景wordpress在文章里面加歌曲
  • 网站推广站群安安互联怎么上传网站
  • 电子科技产品网站建设网站建设及推广套餐
  • 淘宝客优惠券网站建设教程视频医院网站建设目的
  • 2o17甘孜建设网站临沂建网站多少钱
  • 济南公司制作网站网上商城软件开发
  • 动态ip做网站影响seo吗河南省建设厅网站公示公告
  • 东莞外贸网站推广建设建立个人网站多少钱
  • 自己做淘宝客网站吗房产信息网新楼盘
  • 成都电商网站开发建设专业网站哪家技术好
  • 长沙网站托管哪家好虾米wordpress插件
  • 阳明拍卖公司网站做网站做什么类型 比较赚钱
  • 中山精品网站建设策划如何做网站泛目录解析
  • 保定手机网站制作服务器搭建vps教程
  • 重庆荣昌网站建设报价怎么做仿制网站