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.mzph.cn/news/808365.shtml

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

相关文章

互联网大厂ssp面经(操作系统:part1)

1. 什么是进程和线程&#xff1f;它们之间有什么区别&#xff1f; a. 进程是操作系统中运行的一个程序实例。它拥有独立的地址空间和资源&#xff0c;可以独立执行。 b. 线程是进程内的一个执行单元&#xff0c;一个进程可以包含多个线程。 c. 线程共享进程的资源&#xff0c;…

Unity之PlayableGraph实现动画的正播和倒播

内容将会持续更新&#xff0c;有错误的地方欢迎指正&#xff0c;谢谢! Unity之PlayableGraph实现动画的正播和倒播 TechX 坚持将创新的科技带给世界&#xff01; 拥有更好的学习体验 —— 不断努力&#xff0c;不断进步&#xff0c;不断探索 TechX —— 心探索、心进取&am…

3d模型有边界框怎么去除---模大狮模型网

在3D建模软件中&#xff0c;边界框通常是用来表示模型的边界和外轮廓的&#xff0c;但有时候在渲染或导出模型时可能不希望显示这些边界框。以下是一些去除3D模型边界框的方法&#xff1a; 隐藏边界框选项&#xff1a; 在大多数3D建模软件中&#xff0c;边界框的显示可以通过简…

【从浅学到熟知Linux】冯诺依曼体系结构及进程概念详谈!

&#x1f3e0;关于专栏&#xff1a;Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。 &#x1f3af;每天努力一点点&#xff0c;技术变化看得见 文章目录 冯诺依曼体系结构操作系统如何理解管理操作系统概念设计操作系统目的系统调用和库函数概念 进程基本概念描…

移位寄存器

移位寄存器是如何工作的&#xff1f; 移位寄存器按照移位方向可分为左移位寄存器、右移位寄存器、双向移位寄存器。图11-15所示为用D触发器构成的4位左移位寄存器。待存数码由触发器F0的输入端D0输入&#xff0c;在移位脉冲作用下&#xff0c;可将数码从高位到低位向左逐步移入…

基于springboot+vue实现的艺术水平考级报名管理系统

作者主页&#xff1a;Java码库 主营内容&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】&#xff1a;Java 【框架】&#xff1a;spring…

信息收集笔记

1 简介 渗透的本质是信息收集 信息收集也叫做资产收集 信息收集是渗透测试的前期主要工作&#xff0c;是非常重要的环节&#xff0c;收集足够多的信息才能方便接下来的测试&#xff0c;信息收集主要是收集网站的域名信息、子域名信息、目标网站信息、目标网站真实IP、敏感/目…

2024.4.8Morris中序遍历(线索二叉树)学习

这次博主在学习完知识点和代码之后&#xff0c;准备对这个知识重新进行整理总结。站在一个初学者的角度来看待这个知识点&#xff0c;在他人的讲解基础上加一点点自己的理解&#xff0c;并记录下来。以加深自己的理解&#xff0c;并且希望能够帮助到你。博主是一个初学者&#…

HeidiSQL下载安装使用

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

互联网需要做安全防护吗?

互联网需要做安全防护&#xff0c;因为网络攻击的风险随时存在。一旦遭受大规模攻击&#xff0c;企业很可能会受到严重影响&#xff0c;甚至会造成巨大的经济损失和品牌声誉受损。因此&#xff0c;建议企业在安全防护方面做好以下几点&#xff1a; 加强网络安全意识教育&#x…

设备基础命令,路由基础

直连路由 静态路由 动态路由 根据路由器学习路由信息、生成并维护路由表的方法包括直连路由(Direct)、静态路由(Static)和动态路由(Dynamic)。直连路由&#xff1a;路由器接口所连接的子网的路由方式称为直连路由&#xff1b;非直连路由&#xff1a;通过路由协议从别的路由器…

2024年4月12日 十二生肖 今日运势

小运播报&#xff1a;2024年4月12日&#xff0c;星期五&#xff0c;农历三月初四 &#xff08;甲辰年戊辰月丙午日&#xff09;&#xff0c;法定工作日。 红榜生肖&#xff1a;羊、狗、虎 需要注意&#xff1a;牛、马、鼠 喜神方位&#xff1a;西南方 财神方位&#xff1a;…

“安全边际大师”卡拉曼2023年珍贵访谈:如果视市场为狂躁的交易对手,那你就能利用反复无常来获利

“对于那些被广泛跟踪的股票&#xff0c;如果你不比其他人更聪明&#xff0c;且你的观点与别人无异&#xff0c;你是赚不到钱的。” “足够大的折价也许可以抵消你对它缺乏最深刻的认识。” “拓宽投资视野不仅诱人&#xff0c;也可能价值连城。” “如果向市场寻求答案&…

欢迎加入PenPad Season 2 ,获得勋章以及海量 Scroll 生态权益

PenPad 是 Scroll 生态中的首个 LaunchPad 平台&#xff0c;该平台继承了 Scroll 生态的技术优势&#xff0c;具备包括隐私在内的系列特点&#xff0c;同时且也被认为是 Scroll 生态最重要的价值入口之一。Penpad 与 Scroll 官方始终保持着合作&#xff0c;同时该项目自启动以来…

基于Springboot的网上商品订单转手系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的网上商品订单转手系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系…

无人机概述

1、中英文对照表 中文中文简称英文全称英文简称无人驾驶飞机无人机Unmanned Aerial VehicleUAV无人机自组织网络无人机网络flying Ad-Hoc networkFANET 2、相关概念 2.1鲁棒性 网络鲁棒性是指网络系统在面对随机故障、蓄意攻击或其他异常情况时&#xff0c;能够保持其基本功…

智慧工地管理平台源码:提供专业落地的解决方案

目录 智慧工地平台功能简介 一、劳务实名制系统 二、智能塔吊可视系统 三、视频监控&#xff08;含安全行为识别&#xff09; 四、环境监测&#xff08;联动自动喷淋&#xff09; 五、起重机械管控&#xff08;含吊钩可视化&#xff09; 六、升降电梯智能管控 七、高支…

鸿蒙让我赚到了第一笔桶金!年薪33.6W!

抢人&#xff01;抢人&#xff01;抢人&#xff01; 所谓抢滩鸿蒙&#xff0c;人才先行。鸿蒙系统火力全开后&#xff0c;抢人已成鸿蒙市场的主题词&#xff01; 智联招聘数据显示&#xff0c;春节后首周&#xff0c;鸿蒙相关职位数同比增长163%&#xff0c;是去年同期的2.6倍…

【C++算法】线性DP详解:数字三角形、最长上升子序列、最长公共子序列、最长公共子串、字符串编辑距离

文章目录 1&#xff09;数字三角形1&#xff1a;顺推2&#xff1a;逆推 2&#xff09;最长上升子序列1&#xff1a;线性DP做法2&#xff1a;二分优化 3&#xff09;最长公共子序列4&#xff09;最长公共子串5&#xff09;字符串编辑距离 1&#xff09;数字三角形 1&#xff1a…

股票高胜率的交易法则是什么?

股票交易中的高胜率交易法则并非一成不变&#xff0c;而是根据市场状况、个人投资风格和经验等多种因素综合而定的。以下是一些有助于提升交易胜率的法则和策略&#xff1a; 1.趋势跟踪法则&#xff1a;在股票交易中&#xff0c;趋势跟踪是一种有效的策略。通过观察大盘和个股…