day14
day14
数组排序
如果数组中存储的是对象,如何进行排序?
方式一:让该对象的类实现Comparable(比较规则)接口,然后重写compareTo方法,自己制定比较规则
方式二:使用的是comparetor接口,重写compare方法——两个参数
Lambda表达式
作用:用于简化匿名内部类代码的书写。
Lambda表达式使用的前提条件:父类必须是接口并且接口中只能有一个抽象方法(函数式接口:有且仅有一个抽象方法的接口)
怎么去简化呢?Lamdba是有特有的格式的,按照下面的格式来编写Lamdba。
(被重写方法的形参列表) -> {
被重写方法的方法体代码;
}
需要给说明一下的是,在使用Lambda表达式之前,必须先有一个接口,而且接口中只能有一个抽象方法。(注意:不能是抽象类,只能是接口)
像这样的接口,我们称之为函数式接口,只有基于函数式接口的匿名内部类才能被Lambda表达式简化。
Lambda简化规则:
如果参数列表为空或者只有一个参数,可以省略括号。
如果表达式只有一条语句,可以省略大括号和分号。
如果表达式只有一条语句,可以省略return关键字。
静态方法的引用
- 类名::静态方法
- 如果某个Lambda表达式里只是调用一个静态方法,并且前后参数的形式一致,就可以使用静态方法引用
实例方法的引用
- 对象名::实例方法
- 如果某个Lambda表达式里知识调用一个实例方法,并且前后参数的形式一致,就可以使用实例方法
特定类型的方法引用
-
类型::方法
-
如果某个Lambda表达式里只是调用一个实例方法,并且前面参数列表中的第一个参数是作为方法的主调,后面的所有参数都是作为该实例方法的入参的,则此时就可以使用特定类型的方法引用
构造器引用
- 类名::new
- 如果某个Lambda表达式里只是在创建对象,并且前后参数情况一致,就可以使用构造器引用
本文来自博客园,作者:萌新小夏,转载请注明原文链接:https://www.cnblogs.com/xkh-blogs/p/17231093.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用