自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 函数式接口

函数式接口 1.1 函数式接口概述 函数式接口:有且仅有一个抽象方法的接口 Java中的函数式编程体现就是Lambda表达式,所以函数式接口就是可以适用于Lambda使用的 接口只有确保接口中有且仅有一个抽象方法,Java中的Lambda才能顺利地进行推导 如何检测一个接口是不是函数式接口呢? @FunctionalInterface 放在接口定义的上方:如果接口是函数式接口,编译通过;如果不是,编译失败 注意 我们自己定义函数式接口的时候,@FunctionalInterface是可选的,就算我

2022-01-08 22:05:39 94

原创 接口组成更新

接口组成更新 1.1 接口组成更新概述 接口的组成 常量 ​ public static final 抽象方法 ​ public abstract 默认方法(Java 8) 静态方法(Java 8) 私有方法(Java 9) 1.2 接口中的默认方法 需求: 定义一个接口MyInterface,里面有两个抽象方法: void show1(); void show2(); 定义接口的两个实现类: MyInterfaceImplOne MyInterfaceIm

2022-01-08 22:04:42 180

原创 Lambda表达式

Lambda表达式 1.1 函数式编程思想概述 Functional Programming 在数学中,函数就是有输入量、输出量的一套计算方案,也就是“拿数据做操作” 面向对象思想强调“必须通过对象的形式来做事情" 函数式思想则尽量忽略面向对象的复杂语法:“强调做什么,而不是以什么形式去做” 而我们要学习的Lambda表达式就是函数式思想的体现 1.2 体验Lambda表达式 需求:启动一个线程,在控制台输出一句话:多线程程序启动了 方式一: 定义一个类MyRunnable实现Runnable接口,重写r

2022-01-08 22:03:47 51

原创 方法引用(Java)

方法引用 1.1 体验方法引用 在使用Lambda表达式的时候,我们实际上传递进去的代码就是一种解决方案:拿参数做操作 那么考虑一种情况:如果我们在Lambda中所指定的操作方案,已经有地方存在相同方案,那是否还有必要再写重复逻辑呢? 答案肯定是没有必要 那我们又是如何使用已经存在的方案的呢? 这就是我们要讲解的方法引用,我们是通过方法引用来使用已经存在的方案 需求: 定义一个接口(Printable):里面定义一个抽象方法:void printString(String s); 定义一个测试类(Pr

2022-01-08 00:22:43 80

原创 递归与递推

递归与递推 To Iterate is Human,to Recures,Divine 人理解迭代,神理解递归 阶梯问题 递归方法 空间复杂度:O(1) 时间复杂度:O(2^n) 分析: 空间复杂度:因为递归没有申请额外空间,所以为O(1) 时间复杂度:递归的次数以一个二叉树的形式增加,容易知道代码的时间复杂度和二叉树的节点个数有关,得到O(2^n) 递推方法 空间复杂度:O(1) 时间复杂度:O(n) 分析: 空间复杂度:因为递归没有申请额外空间,所以为O(1) 时间复杂度:只有一个for循环即可得

2022-01-02 18:01:42 500 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除