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

行情网免费网站大全高端建站行业

行情网免费网站大全,高端建站行业,京创影视app,WordPress 黏贴图片文章目录 Lambda表达式Lambda表达式的省略写法Lambda练习练习1练习2 算法题算法题1 斐波那契数列算法题2 猴子吃桃子算法题3 爬楼梯 Lambda表达式 Lambda表达式是JDK8开始的一种新语法形式。 基本作用:简化函数式接口的匿名内部类的写法。 注意: Lam…

文章目录

    • Lambda表达式
    • Lambda表达式的省略写法
    • Lambda练习
      • 练习1
      • 练习2
    • 算法题
      • 算法题1 斐波那契数列
      • 算法题2 猴子吃桃子
      • 算法题3 爬楼梯

Lambda表达式

Lambda表达式是JDK8开始的一种新语法形式。

基本作用:简化函数式接口的匿名内部类的写法。

注意:

  • Lambda表达式可以用来简化匿名内部类的书写
  • Lambda表达式只能简化函数式接口的匿名内部类的写法

函数式接口:

有且仅有一个抽象方法的接口叫做函数式接口,接口上方可以加@FunctionalInterface注解

在这里插入图片描述

在这里插入图片描述

import java.util.Arrays;
import java.util.Comparator;public class test41 {public static void main(String[] args) {Integer[] integers = {5, 4, 8, 2, 4, 7, 6, 3, 0, 1, 9, 10};Arrays.sort(integers, (Integer o1, Integer o2) -> {return o1 - o2;});System.out.println(Arrays.toString(integers));  //[0, 1, 2, 3, 4, 4, 5, 6, 7, 8, 9, 10]}
}

Lambda表达式的省略写法

省略核心:可推导,可省略。

省略规则:

1.参数类型可以省略不写。

import java.util.Arrays;
import java.util.Comparator;public class test41 {public static void main(String[] args) {Integer[] integers = {5, 4, 8, 2, 4, 7, 6, 3, 0, 1, 9, 10};Arrays.sort(integers, (o1, o2) -> {return o1 - o2;});System.out.println(Arrays.toString(integers));  //[0, 1, 2, 3, 4, 4, 5, 6, 7, 8, 9, 10]}
}

2.如果只有一个参数,参数类型可以省略,同时()也可以省略。

3.如果Lambda表达式的方法体只有一行,大括号,分号,return可以省略不写,注意三者需要同时省略。

在这里插入图片描述

import java.util.Arrays;
import java.util.Comparator;public class test41 {public static void main(String[] args) {Integer[] integers = {5, 4, 8, 2, 4, 7, 6, 3, 0, 1, 9, 10};Arrays.sort(integers, (o1, o2) -> o1-o2);System.out.println(Arrays.toString(integers));  //[0, 1, 2, 3, 4, 4, 5, 6, 7, 8, 9, 10]}
}

Lambda练习

练习1

定义数组并存储一些字符串,按照字符串的长度进行排序,

短的在前,长的在后

import java.util.Arrays;
import java.util.Comparator;public class test42 {public static void main(String[] args) {String[] strings = {"cjm", "cjm_big_pig", "cjm_pig"};Arrays.sort(strings, (o1, o2) -> o1.length()-o2.length());System.out.println(Arrays.toString(strings));  //[cjm, cjm_pig, cjm_big_pig]}
}

练习2

定义数组并存储一些对象,

要求1:属性有姓名,年龄,身高

要求2:按照年龄的大小进行排序,年龄一样,按照身高排序,身高一样

按照姓名的字母进行排序(姓名中不要有中文或特殊字符)

public class pig {private String name;private int age;private int height;public pig() {}public pig(String name, int age, int height) {this.name = name;this.age = age;this.height = height;}public String getName() {return name;}public int getAge() {return age;}public int getHeight() {return height;}public void setName(String name) {this.name = name;}public void setAge(int age) {this.age = age;}public void setHeight(int height) {this.height = height;}}
import java.util.Arrays;
import java.util.Comparator;public class test43 {public static void main(String[] args) {pig pig1 = new pig("cjm", 29, 160);pig pig2 = new pig("djm", 25, 165);pig pig3 = new pig("djm", 25, 175);pig pig4 = new pig("cjm", 25, 175);pig[] pigs = {pig1, pig2, pig3, pig4};Arrays.sort(pigs, new Comparator<pig>() {@Overridepublic int compare(pig o1, pig o2) {if (o1.getAge() != o2.getAge()) {return o1.getAge() - o2.getAge();} else {if (o1.getHeight() != o2.getHeight()) {return o1.getHeight() - o2.getHeight();} else {return o1.getName().compareTo(String.valueOf(o2));}}}});for (pig pig : pigs) {System.out.println(pig.getName() + " " + pig.getAge() + " " + pig.getHeight());}}
}

运行结果:

djm 25 165
cjm 25 175
djm 25 175
cjm 29 160

算法题

算法题1 斐波那契数列

在这里插入图片描述

在这里插入图片描述

import java.util.ArrayList;public class test44 {public static void main(String[] args) {ArrayList<Integer> arrayList = new ArrayList<>();arrayList.add(1);arrayList.add(1);for (int i = 2; i < 20; i++) {arrayList.add(arrayList.get(i - 1) + arrayList.get(i - 2));}System.out.println(arrayList.get(11));  //144}
}

算法题2 猴子吃桃子

在这里插入图片描述

public class test45 {public static void main(String[] args) {int[] ints = new int[10];ints[9] = 1;for (int i = 8; i >= 0; i--) {ints[i] = (ints[i + 1] + 1) * 2;}System.out.println(ints[0]);  //1534}
}
public class test45 {public static void main(String[] args) {System.out.println(getCount(1));}public static int getCount(int day){if(day<=0||day>=11){System.out.println("时间错误!");return -1;}if(day==10){return 1;}return (getCount(day+1)+1)*2;}
}

算法题3 爬楼梯

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

public class test46 {public static void main(String[] args) {System.out.println(Fn(20));  //10946}public static int Fn(int n) {if (n == 1) {return 1;}if (n == 2) {return 2;}return Fn(n - 1) + Fn(n - 2);}
}

一次可以爬1个或2个或3个台阶:

public class test46 {public static void main(String[] args) {System.out.println(Fn(20));  //121415}public static int Fn(int n) {if (n == 1) {return 1;}if (n == 2) {return 2;}if (n == 3) {return 4;}return Fn(n - 1) + Fn(n - 2) + Fn(n - 3);}
}
http://www.sczhlp.com/news/92406/

相关文章:

  • 做网站的流程是什么长春搜索引擎优化
  • 做珠宝网站价格多少炫酷个人网站
  • 帮做网站的珠海企业网站制作费用
  • seo网站优化排名网站建设营销一站式服务
  • 网站栏目做树形结构图涉密资质 网站建设
  • 重庆网站推广外包网站建设论文结束语
  • 备案用网站建设方案书如何开发一个软件
  • 免费网站注册com凶上海网站建设价格表
  • 购物网站一般分几大模块专做耐克阿迪鞋网站
  • wordpress网站无法访问精彩的网格布局网站
  • 爱站网源码用eclipse做jsp网站
  • 网站建设模版文档支付招聘网站套餐费用怎么做帐
  • 做复刻衣服买网站安徽建设工程信息网官网查询
  • 如何注册一家网站建设公司网站开发毕业设计摘要范文
  • 无锡微网站开发号码认证
  • 做美容一般在哪个网站团购比较好织梦怎么制作手机网站
  • 不是做有网站都叫狠狠设计网页分析
  • 怎么获取网站数据做统计查企业数据要去什么网站
  • 适合用struts2做的网站重庆大学网络教育平台
  • 旅游型网站开发有哪些微信开发公司
  • 做编程题的网站杭州网站推广¥做下拉去118cr
  • 如何下载网站模板建筑施工建设网站
  • 太原网站优化排名漳州 网站设计
  • 哪个建立网站好为自己家秘方做网站
  • 求个网站2021能用的免费咨询心理医生在线
  • 建一个定制网站要多少钱上海网站推广网络公司
  • 长沙网站推广公司天河建设网站
  • 搜狐快站怎么做网站手机如何制作小程序
  • 做网站的流程分析-图灵吧wordpress播放直播
  • 申请域名后如何发布网站c2c模式有哪些优势