4月9号总结

java学习

一.steam流

1.介绍

Stream 是 Java 8 中引入的一种处理集合数据的新抽象。它提供了一种高效且便利的方式来处理集合中的元素,支持函数式编程的特性,使得集合操作变得更加简洁和灵活。

2.创建

List和Set可以直接调用接口的steam方法转换为流

  List<String> s1= new ArrayList<>();s1.stream();
 Set<String> s=new HashSet<>();s.stream();

注意:map不能直接创建stream流,可以使用Map接口的keySet().stream()方法将Map的键集合转换为流,或使用values().stream()方法将Map的值集合转换为流。


Stream<String> keyStream = map.keySet().stream();
Stream<Integer> valueStream = map.values().stream();
3.forerch(遍历)

在前面没有加限定操作的时候foreach可以遍历输出集合内的全部元素。

public class test {public static void main(String[] args) {List<String> s1=new ArrayList<>();Collections.addAll(s1,"张三","李四","王五","猪八戒","孙悟空");s1.stream().forEach(System.out::println);}
}

4.filter(筛选)

fiter可以对我们流进行筛选,筛除不符合我们要求的元素,用上面的例子。

如果我们只需要保留名字长度为2的元素。

那么我们只需要保证元素.length()==2就行。

List<String> s1=new ArrayList<>();Collections.addAll(s1,"张三","李四","王五","猪八戒","孙悟空");s1.stream().filter(s->s.length()==2).forEach(System.out::println);

我们还可以多次筛选,可以用多个filter或者用&&加多个条件。

List<String> s1=new ArrayList<>();Collections.addAll(s1,"张三","李四","王五","猪八戒","孙悟空");s1.stream().filter(s->s.length()==2&&s.startsWith("张") ).forEach(System.out::println);
List<String> s1=new ArrayList<>();Collections.addAll(s1,"张三","李四","王五","猪八戒","孙悟空");s1.stream().filter(s->s.length()==2).filter(s->s.startsWith("张")).forEach(System.out::println);

5.sorted(流排序)

sorted可以将流按照从小到大排序。

 List<String> s1=new ArrayList<>();Collections.addAll(s1,"cba","acb","bac","abc","cab");s1.stream().sorted().forEach(System.out::println);

这里先介绍部分,还有很多很方便的没有介绍。

二.蓝桥杯真题练习

1.接龙数列

样例输入

5
11 121 22 12 2023

样例输出

1

一道dp题,不看题解都想不到是dp题

#include<iostream>
#define ll long long
using namespace std;
int main()
{ll n;cin>>n;ll dp[11]={0},ans=-1;//最长序列 for(int i=0;i<n;i++){string a;cin>>a;ll b=a.back()-'0',c=a[0]-'0';dp[b]=max(dp[b],dp[c]+1);ans=max(ans,dp[b]);}cout<<n-ans<<endl;//这里输出需要删除的个数 return 0;
}
2.冶炼金属

样例输入

3
75 3
53 2
59 2

样例输出

20 25

这里需要数学手算一下。

#include<iostream>
#include<algorithm>using namespace std;int main() {int n;cin >> n;int mi = 0, mx = 1e9;while (n--) {int a, b;cin >> a >> b;mi = max(a / (b + 1) + 1, mi);mx = min(a / b, mx);}cout << mi << " " << mx << endl;return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大话设计模式——11.桥接模式(Bridge Pattern)

简介 将抽象部分与它的实现部分分离&#xff0c;使它们可以独立变化。 UML图&#xff1a; 应用场景&#xff1a; 系统需要在构建的抽象化角色和具体化角色之间增加更多的灵活性不想使用继承导致系统类的个数急剧增加某个类存在多个变化维度使用继承方式容易出现类的膨胀 示例…

基于SSM+Jsp+Mysql的二手车交易网站

开发语言&#xff1a;Java框架&#xff1a;ssm技术&#xff1a;JSPJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包…

MINI2440 开发板 给他干出来了

环境是ubuntu14.04。不要问我为什么是这个版本&#xff0c;因为之前的ubuntu12.04 环境干不出来&#xff0c;你去试试就知道了&#xff01;各种资源包下载不下来。 输入启动参数&#xff1a; 进入MINI2440&#xff1a;别说心里一万个开心&#xff0c;启动完成&#xff0c;输入p…

set和map

这里是目录标题 setinsertfinderasecountlower_boundupper_boundmultisetset的应用 mappairinsertinsert的pair map的遍历map对[ ]的重载(重点)multimap set set的普通迭代器和const迭代器都不支持修改。(这点可以根据源代码看出来&#xff0c;都是对const iterator进行了type…

19 文件接口

文件概念 文件指的是文件内容属性&#xff0c;对文件的操作无外乎就是对内容或者属性的操作 为什么平时不用文件接口 我们运行程序访问文件&#xff0c;本质是进程在访问文件&#xff0c;向硬件写入内容&#xff0c;只有操作系统有这个权限。普通用户想写入内容呢&#xff1…

【一】学习TDengine-总结新技术学习的思考

学习TDengine-总结新技术学习的思考 概要 因业务场景需要我们开始接触时序数据库&#xff0c;于是开始根据以往的学习经验着手熟悉这一项新技术&#xff0c;学习也是一种技能&#xff0c;成功的人越容易成功&#xff0c;因为他们掌握了一套成功的方法&#xff0c;这里提到学习经…

蓝桥杯第十三届电子类单片机组决赛程序设计

前言 一、决赛题目 1.比赛题目 2.题目解读 二、功能实现 1.关于定时器资源 1&#xff09;超声波和NE555需要的定时器资源 2&#xff09;定时器2 2.单位切换 3.数据长度不足时&#xff0c;高位熄灭 4.AD/DA多通道的处理 5.PWM输出 6.长按功能的实现 三、完整代码演…

【QT】pro文件里添加又删除LIBS不影响运行的原因

我发现个问题啊&#xff0c;如果运行项目&#xff0c;发现报错&#xff0c;缺少某dll&#xff0c;接着你在pro文件里加上win32:LIBS -lOpengl32&#xff08;举个例子&#xff09;&#xff0c;接着可以运行了&#xff0c;接着把这行删掉&#xff0c;再运行&#xff0c;仍然可以…

瑞_23种设计模式_访问者模式

文章目录 1 访问者模式&#xff08;Visitor Pattern&#xff09;1.1 介绍1.2 概述1.3 访问者模式的结构1.4 访问者模式的优缺点1.5 访问者模式的使用场景 2 案例一2.1 需求2.2 代码实现 3 案例二3.1 需求3.2 代码实现 4 拓展——双分派4.1 分派4.2 动态分派&#xff08;多态&am…

安卓刷机fastboot分段传输

win10 fastboot 无法识别&#xff0c;驱动下载地址GitHub - xushuan/google_latest_usb_driver_windows 把inf文件更新到设备管理器驱动更新即可 问题 archive does not contain super_empty.img Sending vbmeta_a (4 KB) OKAY [ 0.117s] Writing …

antd+Vue 3实现table行内upload文件图片上传【超详细图解】

目录 一、背景 二、效果图 三、代码 一、背景 一名被组长逼着干前端的苦逼后端&#xff0c;在一个晴天霹雳的日子&#xff0c;被要求前端订单产品实现上传产品图片并立刻回显图片。 二、效果图 三、代码 <template><a-table :dataSource"dataSource" :c…

使用单点登录(SSO)如何提高安全性和用户体验

什么是单点登录&#xff08;SSO&#xff09; 对于所有大量采用云应用程序的组织来说&#xff0c;有效的身份管理是一个巨大的挑战&#xff0c;如果每个 SaaS 应用程序的用户身份都是独立管理的&#xff0c;则用户必须记住多个密码&#xff0c;技术支持技术人员在混合环境中管理…

官网下载IDE插件并导入IDE

官网下载IDEA插件并导入IDEA 1. 下载插件2. 导入插件 1. 下载插件 地址&#xff1a;https://plugins.jetbrains.com/plugin/21068-codearts-snap/versions 说明&#xff1a;本次演示以IDEA软件为例 操作&#xff1a; 等待下载完成 2. 导入插件 点击File->setting->Pl…

Linux下使用C语言实现高并发服务器

高并发服务器 这一个课程的笔记 相关文章 协议 Socket编程 高并发服务器实现 线程池 使用多进程并发服务器时要考虑以下几点&#xff1a; 父进程最大文件描述个数(父进程中需要close关闭accept返回的新文件描述符)系统内创建进程个数(与内存大小相关)进程创建过多是否降低整体…

docker从入门到熟悉

一、什么是docker&#xff1f; Docker是一个用于开发&#xff0c;交付和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开&#xff0c;从而可以快速交付软件。借助Docker&#xff0c;您可以以与管理应用程序相同的方式来管理基础架构。通过利用Docker的快速交付…

Java——数组练习

目录 一.数组转字符串 二.数组拷贝 三.求数组中元素的平均值 四.查找数组中指定元素(顺序查找) 五.查找数组中指定元素(二分查找) 六.数组排序(冒泡排序) 七.数组逆序 一.数组转字符串 代码示例&#xff1a; import java.util.Arrays int[] arr {1,2,3,4,5,6}; String…

政安晨:【深度学习神经网络基础】(三)—— 激活函数

目录 线性激活函数 阶跃激活函数 S型激活函数 双曲正切激活函数 修正线性单元 Softmax激活函数 偏置扮演什么角色&#xff1f; 政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐收藏 收录专栏: 政安晨的机器学习笔记 希望政安晨的博客能够对您有所裨…

超越ChatGPT,国内快速访问的强大 AI 工具 Claude

claude 3 opus面世后&#xff0c;网上盛传吊打了GPT-4。网上这几天也已经有了许多应用&#xff0c;但竟然还有很多小伙伴不知道国内怎么用gpt&#xff0c;也不知道怎么去用这个据说已经吊打了gpt-4的claude3。 今天我们想要进行的一项尝试就是—— 用claude3和gpt4&#xff0c…

GeoServer:忘记密码重置

操作步骤 1. 找到data_dir/security/usergroup/default目录下的users.xml文件&#xff0c; 2.修改password为plain:geoserver&#xff0c; 这里无论原来的密码是什么&#xff0c;改为plain:geoserver之后&#xff0c;就可以通过admin&#xff1a;geoserver默认账户密码登录了。…

[计算机效率] 鼠标手势工具:WGestures(解放键盘的超级效率工具)

3.22 鼠标手势工具&#xff1a;WGestures 通过设置各种鼠标手势和操作进行绑定。当用户通过鼠标绘制出特定的鼠标手势后就会触发已经设置好的操作。有点像浏览器中的鼠标手势&#xff0c;通过鼠标手势操纵浏览器做一些特定的动作。这是一款强大的鼠标手势工具&#xff0c;可以…