【Java】Stream流、方法引用(Java8)

Stream流

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

中间方法

在这里插入图片描述

distinct() 使用HashSet去重

终结方法

在这里插入图片描述

toArray()

在这里插入图片描述

value 表示 流中数据的个数,要跟数组的长度保持一致。

collect()

在这里插入图片描述

收集到map中,比较复杂。需要指定 键 和 值 的生成规则。

在这里插入图片描述

方法引用

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

01_引用静态方法

​ 引用类方法,其实就是引用类的静态方法

  • 格式 类名::静态方法

  • 范例 Integer::parseInt

    Integer类的方法:public static int parseInt(String s) 将此String转换为int类型数据

    public interface Converter {int convert(String s);}public class ConverterDemo {public static void main(String[] args) {//Lambda写法useConverter(s -> Integer.parseInt(s));//引用类方法useConverter(Integer::parseInt);}private static void useConverter(Converter c) {int number = c.convert("666");System.out.println(number);}
    }
    

在这里插入图片描述

02_引用成员方法

在这里插入图片描述

注意:2、3种中,static里不能引用非静态方法,需要先实例化new一个。

在这里插入图片描述

03_引用构造方法

​ 引用构造器,其实就是引用构造方法

  • l格式 类名::new 范例 Student::new

    public class Student {private String name;private int age;}public interface StudentBuilder {Student build(String name,int age);}public class StudentDemo {public static void main(String[] args) {//Lambda简化写法useStudentBuilder((name,age) -> new Student(name,age));//引用构造器useStudentBuilder(Student::new);}private static void useStudentBuilder(StudentBuilder sb) {Student s = sb.build("林青霞", 30);System.out.println(s.getName() + "," + s.getAge());}
    }
    
  • 使用说明 Lambda表达式被构造器替代的时候,它的形式参数全部传递给构造器作为参数

04_使用类名引用成员方法

在这里插入图片描述

在这里插入图片描述

注意:这里并没有满足参数一致!!所以这里的流的类型是String,map中也必须用String的方法!可以按照上面的理解方式。

​ 引用类的实例方法,其实就是引用类中的成员方法

  • 格式 类名::成员方法

  • 使用说明 Lambda表达式被类的实例方法替代的时候, 第一个参数作为调用者,后面的参数全部传递给该方法作为参数

05_引用数组的构造方法

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

jQuery 笔记13 JavaScript的好帮手

相关内容:下载jQuery网址、jQuery的使用、表格排序软件(tablesorter)、行事历软件(FullCalendar)、…… jQuery是一套开放性源代码的JavaScript函数库(Library),jQuery是JavaScript函数库,简化了…

示波器使用学习笔记#1

1.示波器横轴表示的是时间,纵轴是电压 此时纵轴一格刻度是1V。 此时横轴一格是200us。 此时方波的电压值是2500mV,周期为200us * 4.6 920 us,频率为1087Hz。 采样率500M/秒表示:示波器每秒钟采集500w个点 ,当前示波器…

A Bug‘s Life (并查集)

//新生训练 #include <iostream> #include <algorithm> using namespace std; const int N 5000; int p[N], sz[N]; int n, m; int find(int x) {if (p[x] ! x)p[x] find(p[x]);return p[x]; } int main() {int T;scanf("%d", &T);for (int k 1; …

python中type,object,class 三者关系

type,object,class 三者关系 在python中&#xff0c;所有类的创建关系遵循&#xff1a; type -> int -> 1 type -> class -> obj例如&#xff1a; a 1 b "abc" print(type(1)) # <class int> 返回对象的类型 print(type(int)) …

C++设计模式-创建型设计模式

设计模式 设计模式是什么 设计模式是指在软件开发中&#xff0c;经过验证的&#xff0c;用于解决在特定环境下&#xff0c;重复出现的&#xff0c;特定问题的解决方案&#xff1b;其实就是解决问题的固定套路。但是要慎用设计模式&#xff0c;有一定的工程代码量之后用它比较…

主持人口才训练与实用技巧

主持人口才训练与实用技巧 一、引言 在广播、电视、网络等媒体中&#xff0c;主持人是节目的灵魂和核心。一个优秀的主持人不仅要具备良好的专业素养&#xff0c;更需要出色的口才技巧和应对能力。本文将详细探讨主持人口才训练的重要性以及实用的技巧&#xff0c;帮助主持人…

当AI遇上架构师:谁将主导未来?

▼最近直播超级多&#xff0c;预约保你有收获 架构师的核心能力是面对不同的业务场景给出合适的架构设计方案&#xff0c;Balance 平衡设计就是架构师最重要的能力&#xff0c;没有之一。 在 AI 大模型时代&#xff0c;AI 大模型正在重新定义软件的范式。在当前&#xff0c;世界…

Win11 怎么让软件运行后台全部显示在任务栏上 win11任务栏展开显示所有软件图标

Win11 怎么让软件运行后台全部显示在任务栏上 win11任务栏展开显示所有软件图标 方法二 搜索cmd 打开命令行面板 然后输入 explorer shell:::{05d7b0f4-2121-4eff-bf6b-ed3f69b894d9}就能显示出来了 ## 方法三 通知区域图标不存在 如图&#xff0c;显示为这样 这种时候桌面…

[C++基础学习-07]----C++结构体详解

前言 结构体&#xff08;Struct&#xff09;是C中一种用户定义的复合数据类型&#xff0c;用于存储不同类型的数据项。结构体可以包含不同类型的数据成员&#xff0c;这些数据成员可以是基本类型&#xff08;如int、float、char等&#xff09;&#xff0c;也可以是数组、指针、…

Android版本依赖Version catalog

曾经我们使用config.gradle文件进行版本依赖配置&#xff0c;然后在project的build.gradle.kts中使用如下方式引入&#xff1a; apply(from "./config.gradle") 缺点&#xff1a;在project的module中引用无任何提示&#xff0c;无法跳转到指定引用 一、创建versio…

绝地求生 延迟高 丢包掉线加速器分享 内附延迟问题解决方法

绝地求生 延迟高 丢包掉线加速器分享 内附延迟问题解决方法 绝地求生&#xff0c;俗称吃鸡&#xff0c;自从游戏18年上线之初一直火热至今&#xff0c;在全世界范围内都有着极高的关注度。可是许多玩家常常在游戏内遇到各种问题&#xff0c;影响了玩家们的游戏体验&#xff0c…

[数据结构]——非递归排序总结——笔试爱考

具体代码实现在gitee&#xff1a;登录 - Gitee.com 目录 具体代码实现在gitee&#xff1a;登录 - Gitee.com 1.非递归实现的快速排序算法。 第一步 首先要创建一个栈 第二步紧接着进行入栈&#xff0c;出栈&#xff0c;弹出栈顶元素&#xff0c;获取栈顶元素&#xff0c;判…

百度/高德地图的自定义content中如何使用ReactDom写法

遇到的问题 我们知道&#xff0c;在百度/高德地图中&#xff0c;有时需要加一些自定义html标签&#xff0c;但通常是用字符串传入&#xff08;意味着只能用原生的写法&#xff09;&#xff0c;写起来非常不方便&#xff0c;如下图所示&#xff1a; // 百度api const infoWindo…

如何查公网IP?

在网络通信中&#xff0c;每个设备都被分配一个独特的IP地址&#xff0c;用于在Internet上进行标识和通信。公网IP是指可以直接从Internet上访问的IP地址&#xff0c;也称为全局IP。通过查公网IP&#xff0c;我们可以了解我们的设备在Internet上的位置和连接状态。 2. 查公网IP…

【免费Java系列】大家好 ,今天是学习面向对象高级的第四天点赞收藏关注,持续更新作品 !

这是java进阶课面向对象第一天的课程可以坐传送去学习http://t.csdnimg.cn/Lq3io day04——常用API 一、 StringBuilder类 StringBuilder代表可变字符串对象&#xff0c;相当于是一个容器&#xff0c;它里面的字符串是可以改变的&#xff0c;就是用来操作字符串的。 好处&am…

MATLAB实现遗传算法优化第三类生产线平衡问题

第三类生产线平衡问题的数学模型 假设&#xff1a; 工作站数量&#xff08;m&#xff09;和生产线节拍&#xff08;CT&#xff09;是预设并固定的。每个任务&#xff08;或作业元素&#xff09;只能分配到一个工作站中。任务的执行顺序是预先确定的&#xff0c;且不可更改。每…

读天才与算法:人脑与AI的数学思维笔记16_音乐图灵测试

1. 艾米 1.1. 人工智能作曲家 1.1.1. 分析机可能会生成任意复杂程度、精细程度的科学的音乐作品 1.1.1.1. 阿达洛夫莱斯 1.1.2. 巴赫的作品是大多数作曲家开始学习创作的起点&#xff0c;也是大多数计算机开始学习作曲的起点…

从零开始学AI绘画,万字Stable Diffusion终极教程(四)

【第4期】图生图 欢迎来到SD的终极教程&#xff0c;这是我们的第四节课 这套课程分为六节课&#xff0c;会系统性的介绍sd的全部功能&#xff0c;让你打下坚实牢靠的基础 1.SD入门 2.关键词 3.Lora模型 4.图生图 5.controlnet 6.知识补充 在前面的课程中&#xff0c;我…

shpfile转GeoJSON;控制shp转GeoJSON的精度;如何获取GeoJSON;GeoJSON是什么有什么用;GeoJSON结构详解(带数据示例)

目录 一、GeoJSON是什么 二、GeoJSON的结构组成 2.1、点&#xff08;Point&#xff09;数据示例 2.2、线&#xff08;LineString&#xff09;数据示例 2.3、面&#xff08;Polygon&#xff09;数据示例 2.4、特征&#xff08;Feature&#xff09;数据示例 2.5、特征集合&…

开源版本管理系统的搭建一:SVN服务端安装

作者&#xff1a;私语茶馆 1.Windows搭建SVN版本管理系统 点评&#xff1a;SVN本身非常简洁易用&#xff0c;VisualSVN文档支撑非常好&#xff0c;客户端TortoiseSVN非常专业。5星好评。 1.1.SVN概要和组成 背景介绍 Svn是一个开源版本管理系统&#xff0c;由CollabNet公司…