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

wordpress主题赚钱重庆seo推广外包

wordpress主题赚钱,重庆seo推广外包,如何做一款app需要多少钱,手机软件怎么做出来的一.Lambda表达式 前提是:参数是函数式接口才可以书写Lambda表达式 函数式接口条件: 1.接口 2.只有一个抽象方法 lambda表达式又称为匿名函数,允许匿名函数以参数的形式传入方法,简化代码 lambda表达式分为两部分()->{} …

一.Lambda表达式

前提是:参数是函数式接口才可以书写Lambda表达式

函数式接口条件: 1.接口  2.只有一个抽象方法 

lambda表达式又称为匿名函数,允许匿名函数以参数的形式传入方法,简化代码

lambda表达式分为两部分()->{}

():要被覆盖的抽象方法的参数列表

如果参数只有一个的话()可以省略

{}:要被覆盖的抽象方法的方法体

如果方法体中只有一条语句{}和; 和 return省略

lambda中的return取决于抽象方法的返回类型

以下是关于lambda表达式的练习

(1.)TreeSet的一个构造方法可以使用 如下

TreeSet<>(Comparator接口 有一个抽象方法 compare(T x,T y)); 

		TreeSet<Integer> set = new TreeSet<>((x, old)->old - x);Collections.addAll(set,45,23,100,98);

(2).Collections.sort(list,Comparator) 也可以使用

		ArrayList<Integer> list=new ArrayList<>();Collections.addAll(list,45,23,100,98);//对list按照个位数升序/*Collections.sort(list,(n,old)->{return n%10-old%10;});*/Collections.sort(list,(n,old)->n%10-old%10);

(3)Collections.min(list,Comparator)  根据名字长度升序并且拿到第一个元素

Student stu=Collections.min(set,(n,old)->{return n.getName().length()-old.getName().length();});
Student stu=Collections.min(set,(n,old)-> n.getName().length()-old.getName().length());System.out.println(stu);

二.JDK8.0 新方法

(1.)对于list集合的

list.sort(Comparator<>); 可在比较器中设置比较规则 也可用lambda表达式 如下

其中里面的x.compareTo是泛型自身的比较规则

list.sort((x,y)->{return x.compareTo(y);});

 总结对list的排序

List 去排序
Collections . sort ( List )
Collections . sort ( List , Comparator )
list . sort ( Comparator )
TreeSet set = new TreeSet ( List 对象 );

 (2)Collection提供

forEach(Consumer):  

单值集合对象 . forEach (( x ) -> { 逻辑 });

引入了四大接口之一的-----------消费型接口 只会进去 不会出来返回类型void

接口:interface Consumer<泛型>()
唯一的抽象方法: void accept(泛型 x);
使用如下:
获取学生的年龄 并且加1
		set.forEach((stu)->{stu.setAge(stu.getAge()+1);});
	set.forEach((temp)->{temp.setScore(temp.getScore()+5);});

所谓的forEach中的小括号就是拿出集合中每一个数据罢了,如果是学生集合,对应的拿出的就是单独一个学生

removeIf(Predicate):删除集合里面所有符合条件的元素 调用如下

单值集合对象.removeIf(  (x)->{return 条件判断;})

四大接口之一---断言型接口

接口:interface Predicate<T >{}

唯一的抽象方法: boolean test(泛型 x);

练习removeIf,符合条件的就删除了

		//删除20岁的Jackerset.removeIf((temp)->{return temp.getName().equals("Jacker")&&temp.getAge()==20;});

(3).为map提供的方法

forEach(BiConsumer) 拿出集合中的每个对象进行某种操作

map.forEach((key,value)->{逻辑});

三.方法的引用

jdk8.0的新语法 对lambda表达式进行了进一步简化

之前

对象.实例方法()  

对象.静态方法()

类名.静态方法()

new 构造方法()

可以被一下替换

【对象::实例方法】

必须同时满足的两个条件
1 要被覆盖的抽象方法的参数列表和实例方法的参数列表一致
2 要被覆盖的抽象方法的返回类型和实例方法的返回类型一致
		// 抽象方法:void accept(Integer)// 实例方法:void println(Integer)list.forEach(System.out::println);// list.forEach((x)->System.out.println(x));

但是下面的不行

		Map<String,Integer> map = new HashMap<>();map.put("黄一亿",59);map.put("可可可",59);// 1 要被覆盖的抽象方法的参数列表和实例方法的参数列表一致
// 2 要被覆盖的抽象方法的返回类型和实例方法的返回类型一致// 抽象方法:void accept(String,Integer)// 实例方法:void println(String)// 1 X 2 √map.forEach((k,v)->System.out.println(k+v));

【类名::实例方法】

必须同时满足的三个条件
1 要被覆盖的抽象方法的参数列表比实例方法的参数列表多一个
2 要被覆盖的抽象方法的第一个参数可以调用实例方法
3 要被覆盖的抽象方法的返回类型和实例方法的返回类型一致
		//抽象方法: int compare(Student x,Student y)//实例方法; int compareTo(Student y)//11.抽象方法的参数比实例方法多一个//22.抽象方法的第一个 参数可以调用---升序可以 降序不OK//33.抽象方法的返回类型和实例方法的返回类型一致//1 √ 2 √ 3.√list.sort((x,y)->{return x.compareTo(y);});list.sort(Student::compareTo);

类名::静态方法

【构造方法::new

1 要被覆盖的抽象方法的参数列表和构造方法的参数列表一致
2 要被覆盖的抽象方法的返回类型和构造方法的返回类型一致
		Student stu = null;stu = Optional.ofNullable(stu) // Optional<Student>// 构造方法:Student Student()// 抽象方法:Student get()// 参数列表一致// 返回类型一致// 构造方法::new// .orElseGet(()->new Student());.orElseGet(Student::new);System.out.println(stu);

四.Optional 容器类

jdk8.0之后出现的致力于解决空指针问题
首先认识of(元素)---认识不掌握 不好用一点都不好
of( 元素 )
如果元素非空 直接返回包含元素的 Optional 对象
如果元素是 null 直接空指针
get()--------------------------------垃圾 不掌握
如果容器不是空容器 取出容器中的元素
如果容器是空容器 Optional.empty 直接报错【 NoSuchElementException
【结合 isPresent() 使用】
isPresent() 不是空容器 -true Optional.empty-false
ifPresent ( Consumer )
如果容器非空 会调用匿名函数
如果容器时 Optional . empty 不执行匿名函数

对于元素的放用ofNullable---以下掌握

ofNullable( 元素 )
如果元素非空 直接返回包含元素的 Optional 对象
如果元素为空 直接返回 Optional.empty 空元素
        String str = "hello";Optional<String> op = Optional.ofNullable(str);System.out.println(op); 打印 helloString str = null;Optional<String> op = Optional.ofNullable(str);System.out.println(op);  打印Optional.empty

搭配上取 

orElse(类型 x) x => 如果Optional.empty 使用x

如果容器非空 直接返回容器中的内容
使用如下:
如果str为空则为 no value,不为空则为原来值
str = Optional.ofNullable(str).orElse("No Value");

orElseGet(Suppler<T> ss)

orElseGet (() -> { return xxx ;})
如果容器非空 直接返回容器中的内容
如果 Optional . empty 使用 x 调用匿名函数【 lambda 的版本】
区别: orElseGet 惰性执行

四大接口之一----供给型接口 只提供 不接收

接口: interface Supplier< 泛型 >{}
唯一的抽象方法:泛型 get()
        String str = null;str = Optional.ofNullable(str)// Optional<String>// 抽象方法:String get().orElseGet(()->"No Value");System.out.println(str);

类名::构造方法

		Student stu = null;stu = Optional.ofNullable(stu) // Optional<Student>// 构造方法:Student Student()// 抽象方法:Student get()// 参数列表一致// 返回类型一致// 构造方法::new// .orElseGet(()->new Student());.orElseGet(Student::new);System.out.println(stu);


文章转载自:
http://phragmoplast.c7513.cn
http://trifurcate.c7513.cn
http://eagle.c7513.cn
http://fenestrated.c7513.cn
http://northmost.c7513.cn
http://gramarie.c7513.cn
http://religioso.c7513.cn
http://appropriator.c7513.cn
http://voltage.c7513.cn
http://routing.c7513.cn
http://razorback.c7513.cn
http://sequential.c7513.cn
http://clicket.c7513.cn
http://metage.c7513.cn
http://vignette.c7513.cn
http://retable.c7513.cn
http://ambivert.c7513.cn
http://promin.c7513.cn
http://unaltered.c7513.cn
http://endogamous.c7513.cn
http://jiulong.c7513.cn
http://metacompiler.c7513.cn
http://pyrography.c7513.cn
http://lacteal.c7513.cn
http://hideaway.c7513.cn
http://soldierly.c7513.cn
http://amsterdam.c7513.cn
http://aberration.c7513.cn
http://urtext.c7513.cn
http://allelopathy.c7513.cn
http://training.c7513.cn
http://caesura.c7513.cn
http://clairschach.c7513.cn
http://pontlevis.c7513.cn
http://sternpost.c7513.cn
http://chimurenga.c7513.cn
http://squally.c7513.cn
http://semisecrecy.c7513.cn
http://rabbitbrush.c7513.cn
http://although.c7513.cn
http://wireman.c7513.cn
http://jenghiz.c7513.cn
http://bedevilment.c7513.cn
http://dotter.c7513.cn
http://hoistway.c7513.cn
http://orderly.c7513.cn
http://wirelike.c7513.cn
http://abbe.c7513.cn
http://siddur.c7513.cn
http://sponsorship.c7513.cn
http://birdwoman.c7513.cn
http://regardant.c7513.cn
http://slash.c7513.cn
http://vasoinhibitor.c7513.cn
http://monoacidic.c7513.cn
http://planetology.c7513.cn
http://cavernous.c7513.cn
http://similize.c7513.cn
http://walkyrie.c7513.cn
http://obtect.c7513.cn
http://snout.c7513.cn
http://ttf.c7513.cn
http://sulfide.c7513.cn
http://wearisome.c7513.cn
http://sultry.c7513.cn
http://xyphoid.c7513.cn
http://vespertilionid.c7513.cn
http://endostosis.c7513.cn
http://descensional.c7513.cn
http://compounding.c7513.cn
http://zoomy.c7513.cn
http://blemya.c7513.cn
http://padding.c7513.cn
http://olea.c7513.cn
http://pontianak.c7513.cn
http://assimilate.c7513.cn
http://digitiform.c7513.cn
http://sistrum.c7513.cn
http://discourteous.c7513.cn
http://babism.c7513.cn
http://thermosetting.c7513.cn
http://farmerette.c7513.cn
http://cuvette.c7513.cn
http://corrigenda.c7513.cn
http://galvanic.c7513.cn
http://procaryote.c7513.cn
http://urbicide.c7513.cn
http://cupellation.c7513.cn
http://troublemaker.c7513.cn
http://tor.c7513.cn
http://schmagagi.c7513.cn
http://phenocopy.c7513.cn
http://proofless.c7513.cn
http://oriflamme.c7513.cn
http://namely.c7513.cn
http://monanthous.c7513.cn
http://jaywalking.c7513.cn
http://fissile.c7513.cn
http://saboteur.c7513.cn
http://yqb.c7513.cn
http://www.zhongyajixie.com/news/74429.html

相关文章:

  • 石家庄网站建设王道下拉棒网络营销的三种方式
  • 网站由谁备案百度学术论文查重免费
  • 网站重新备案需要多长时间群推广
  • 上传网站源码市场营销手段有哪四种
  • 长春网站建设外包网站加速
  • 手机兼职赚钱平台一单一结长沙网站推广和优化
  • 企业网站托管一年多少钱软文平台有哪些
  • 中山网站搜索排名可以免费推广的网站
  • 机器封所有端口 不支持做网站如何做电商 个人
  • 扬州哪里做网站好厦门seo代理商
  • 佛山建企业网站网站定制
  • 宁波网站推广营销公司竞价推广代运营
  • 网站正常打开速度慢网站关键词优化怎么做的
  • 网站锚点链接怎么做怎么样推广最有效最快速
  • 做网站排版整合营销策略
  • 厦门企业建站模板那个推广平台好用
  • 文章收费wordpress合肥关键词优化平台
  • 网站规划html凤山网站seo
  • 域名注册网站有哪些国际新闻头条今日要闻
  • 翻墙到国外网站怎么做巨量千川广告投放平台
  • 做任务挣钱的网站appseminar
  • 专门做配电箱的网站百度广告关键词价格表
  • 做招聘网站需要什么人员如何做友情链接
  • 做设备推广的网站sem推广是什么
  • 阿里云做的网站这么卡的百度收录网址提交
  • 营销型网站建设价格抖音关键词排名优化
  • 建网站的公司赚钱吗搜一搜百度
  • 网站设计大全个人免费建站系统
  • 网页制作平台哪个好上海网站排名优化
  • 做网站关键词要懂代码么网络广告营销策略