JavaSE 面向对象程序设计进阶 Lambda表达式 2024年详解

news2025/4/20 16:21:37

Lambda表达式

作用

简化匿名内部类的书写

排序包装类数组

改写匿名内部类

代码实现

import java.util.Arrays;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) {
        Integer[] arr=new Integer[]{2,1,3,4};

        Arrays.sort(arr,(Integer o1,Integer o2)->{return o2-o1;});

        Arrays.stream(arr).forEach(s -> System.out.println(s));
    }
}

函数式编程

一种思想特点

面向对象:先找对象,再去让对象做事情

因为对于我们最重要的是

方法里面的逻辑

函数式编程

忽略面向对象的复杂语法

强调做什么,而不是谁去做

Lambda是函数式编程的方法体现

关注逻辑,而不是创建对象

格式

注意点

可以简化内部类书写

不可以用在其他对方

但只能简化函数式接口的匿名内部类的写法

有且只有一个抽象方法的接口叫做函数式接口

接口上方有注解 @FunciationInterface

示例

匿名内部类

利用lambda表达式改写

函数式接口

总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1899120.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大模型成为软件和数据工程师

前言 想象一下这样一个世界:人工智能伙伴负责编码工作,让软件和数据工程师释放他们的创造天赋来应对未来的技术挑战! 想象一下:你是一名软件工程师,埋头于堆积如山的代码中,淹没在无数的错误中&#xff0…

PyCharm

一、介绍 PyCharm 是 JetBrains 公司开发的一款功能强大的 Python 集成开发环境(IDE)。它专为 Python 开发设计,提供了一系列强大的工具和功能,帮助开发者更高效地编写、调试和维护 Python 代码。以下是对 PyCharm 的详细介绍&am…

spring boot 接口参数解密和返回值加密

spring boot 接口参数解密和返回值加密 开发背景简介安装配置yml 方式Bean 方式 试一下启动项目返回值加密参数解密body 参数解密param和form-data参数解密 总结 开发背景 虽然使用 HTTPS 已经可以基本保证传输数据的安全性,但是很多国企、医疗、股票项目等仍然要求…

SEELE框架:图像中主体重定位的创新方法

现有的图像编辑工具多集中于静态调整,如替换图像中的特定区域或改变整体风格,对于动态调整——特别是图像中主体的位置变化则显得力不从心。这种局限性激发了对更加先进和灵活的图像编辑技术的探索。复旦大学数据科学学院的研究团队提出了一种名为SEELE的…

ZW3D二次开发_CAM_设置参数并输出NC文件

ZW3D可以输出NC文件,代码示例如下: int index;int ret cvxCmInqIndexFromName(CM_OUT, (char*)"NC", &index);//获取参数svxNcSetting ncSet;ret cvxCmGetOutputNCSet(index, &ncSet);//设置参数strcpy_s(ncSet.filename, "C:\…

4个免费文章生成器,为你免费一键生成原创文章

在当今的创作领域,创作者们常常陷入各种困境。灵感的缺失、内容创新的压力,每一项都如同沉重的枷锁,束缚着他们的创作步伐。但随着免费文章生成器的出现,宛如一场及时雨,为创作者们带来了新的希望和转机。免费文章生成…

Runway Gen-3 实测,这就是 AI 视频生成的 No.1!视频高清化EvTexture 安装配置使用!

Runway Gen-3 实测,这就是 AI 视频生成的 No.1!视频高清化EvTexture 安装配置使用! 由于 Runway 作为一个具体的工具或平台,其详细信息在搜索结果中没有提供,我将基于假设 Runway 是一个支持人工智能和机器学习模型的创意工具,提供一个关于使用技巧和类似开源项目的文稿总…

上网行为管理系统是什么?有哪些好用的上网行为管理系统?

IT经理(ITM): 大家好,今天我们聚在这里,是为了讨论一个对我们公司来说越来越重要的议题:上网行为管理系统(WBS)。我们知道,员工的网络使用已经不仅仅是个人行为,它直接影…

S32K3 工具篇4:如何在S32DS中使用lauterbach下载

S32K3 工具篇4:如何在S32DS中使用lauterbach下载 1. TRACE32软件下载与配置2. 如何在S32DS里面构建劳德巴赫的接口2.1 新建工程带有lauterbach2.2 已有工程没有lauterbach 劳德巴赫lauterbach是一款非常经典强悍的调试器,还带有trace功能,在汽…

CAN_TxStatus_Pending报错问题

最近用STM32F407最小电路板测试CAN通讯遇到点小问题:回环模式测试没有问题的基础上,两块相同的最小系统板之间也可以通讯。但把其中一块板子换成USB转CAN分析仪时(或者其他板子),怎么也调不通。 思考良久,硬件测试正常&#xff0c…

只需几个演示就能对齐大模型,杨笛一团队提出的DITTO竟如此高效

人类的教育方式,对大模型而言也很适用。 养育孩子时,古往今来人们都会谈到一种重要方法:以身作则。也就是让自己成为孩子模仿学习的范例,而不是单纯地告诉他们应该怎么做。在训练大语言模型(LLM)时&#xf…

防勒索病毒袭击,及时定期备份势在必行——易备防勒索备份成功案例

上海某贸易有限公司是于 2010 年 6 月在上海成立的全日资企业,注册资金一亿日元。总公司位于日本东京,从事独立开发制造和销售使用纯天然的植物制成的化妆品、健康食品、日用小商品。 该公司使用用友优普 U8 供应链及电商系统,该系统部署于阿…

CV02_超强数据集:MSCOCO数据集的简单介绍

1.1 简介 MSCOCO数据集,全称为Microsoft Common Objects in Context,是由微软公司在2014年推出并维护的一个大规模的图像数据集,旨在推动计算机视觉领域的研究,尤其是目标识别、目标检测、实例分割、图像描述生成等任务。该数据集…

什么是OSPFv2 ?

什么是OSPF ? 开放式最短路径优先 OSPF(Open Shortest Path First)是IETF组织开发的一个基于链路状态的内部网关协议(Interior Gateway Protocol)。 目前针对IPv4协议使用的是OSPF Version 2(RFC2328)&a…

CAN总线(上)

CAN总线(Controller Area Network Bus)控制器局域网总线 CAN总线是由BOSCH公司开发的一种简洁易用、传输速度快、易扩展、可靠性高的串行通信总线,广泛应用于汽车、嵌入式、工业控制等领域 CAN总线特征: 两根通信线(…

mars3d加载wms服务或者wmts服务注意事项

1.wms只支持4326、3857、4490的标准切片,其他坐标系不支持 Mars3D三维可视化平台 | 火星科技 2.wmts同理,Mars3D三维可视化平台 | 火星科技 3.对应级别tilematrix找到的瓦片tilerow&tilecol这两个参数使用常见报错无效参考: 【Mars3d】…

JAVA 八大warrp包装类

一、介绍 二、自动拆箱与手动拆箱 //jdk5前是手动装箱和拆箱//手动装箱 int -> Integerint n1 100;Integer integer new Integer(n1);//只要new就shibuInteger integer1 Integer.value0f(n1)//手动拆箱//Integer -> intint i integer.intValue(); ​//jdk5后&#xff…

源代码防泄漏之反向沙箱方案的经验分享

反向沙箱(Reverse Sandbox)是一种安全技术,主要用于检测和分析恶意软件的行为。与传统沙箱不同,反向沙箱的重点在于模拟恶意软件的预期运行环境,以诱导恶意软件展示其真实行为。这种技术可以帮助安全专家更深入地理解恶…

Leaflet【六】绘制交互图形、测量、经纬度展示

本文主要探讨了如何利用leaflet-draw插件在地图上绘制图形,以及通过leaflet-measure测量距离和面积,并将经纬度绘制到地图上。首先,我们使用leaflet-draw插件,该插件提供了一种简单而直观的方式来绘制各种形状(如点、线…

【K8s】专题六(4):Kubernetes 稳定性之初始化容器

以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发!欢迎扫码关注个人公众号! 目录 一、基本介绍 二、主要特点 三、资源清单(示例) 一、基本介绍 初…