leetcode够用之java语法
常用方法
Arrays.sort()排序
import java.util.Arrays;public class Main {public static void main(String[] args) {int[] numbers = {9, 2, 5, 1, 7, 3};Arrays.sort(numbers);System.out.println(Arrays.toString(numbers)); // 输出: [1, 2, 3, 5, 7, 9]}
}
获取str中的第i-1个字符
str.charAt(i);
String[] str = {"abc","def"};
System.out.println(str[0].charAt(0));
//输出 a
去除字符串str开头和末尾的空格
str.trim()
substring截取字符串str.subtring(从此下标,往后要这么多个)
String[] str = {"abc","def"};
System.out.println(str[0].substring(0,3));
//输出abc
判断字符串某位是不是数字
Character.isDigit(s.charAt(i))
//true 或者 false
######删除字符串中的某一字符(str得是StringBuilder或StringBuffer)
str.deleteCharAt(i);
把String类型转换为StringBuilder或StringBuffer
String str = "Hello, StringBuilder!";
StringBuilder stringBuilder = new StringBuilder(str);
char[] arr = s.toCharArray();
这段代码是将字符串s
中的每个字符依次提取出来,然后把这些字符存储到字符数组arr
中。
判断ch中是否含有"aeiouAEIOU"中的一个
public boolean isVowel(char ch) {return "aeiouAEIOU".indexOf(ch) >= 0;}
调试模式时,高亮的行,是将要执行的语句(还未执行)
ctrl+shift+F8 查看程序所有断点
IDEA块缩进:
tab
shift+tab
String.toCharArray()
是一个内置的方法,用于将字符串(String
类型)转换为字符数组(char[]
类型)。这个方法非常有用,当你需要直接访问或操作字符串中的每个字符时,它可以提供便利。(java中的字符串String是不可变的,相比之下,StringBuffer
(线程安全) 和 StringBuilder
(性能优) 类提供了可变的字符串操作。)
char[] charArray = someString.toCharArray();
例子👇
public class Main {public static void main(String[] args) {String exampleString = "Hello, World!";char[] charArray = exampleString.toCharArray();// 打印字符数组for (char ch : charArray) {System.out.print(ch + " ");}}
}
// 正则匹配连续的空白字符作为分隔符分割(s为String)List<String> wordList = Arrays.asList(s.split("\\s+"));
// 反转数组
Collections.reverse(wordList);
Math.min和Math.max
比较两个或多个数值,并返回其中的最小值或最大值
例子👇
Math.min(leftMin[i - 1], nums[i]);
Math.max(rightMax[i + 1], nums[i]);
统计数组中的累加和👇
public int pivotIndex(int[] nums) {int total = Arrays.stream(nums).sum();
数组计长用.length 字符串计长用.length()
单词反转👇:
//输入:s = "the sky is blue"
//输出:"blue is sky the"
class Solution {public String reverseWords(String s) {// 除去开头和末尾的空白字符s = s.trim();// 正则匹配连续的空白字符作为分隔符分割List<String> wordList = Arrays.asList(s.split("\\s+"));Collections.reverse(wordList);return String.join(" ", wordList);}
}
哈希表(快速查询)
HashMap<Integer, Integer> cnt = new HashMap<>();
常用方法
- put(K key, V value):向
HashMap
中添加一个键值对。如果键已存在,则用新值替换旧值。 - get(Object key):根据键获取对应的值。如果键不存在,返回
null
。 - remove(Object key):根据键移除键值对。
- clear():清空
HashMap
中的所有映射。 - size():返回
HashMap
中的键值对数量。 - containsKey(Object key):判断
HashMap
是否包含指定的键。 - containsValue(Object value):判断
HashMap
是否包含指定的值。
hashmap.merge(key, value, remappingFunction)
把两个值处理之后的结果作为value去更新map中以key为键的值,最后再将这个值返回给调用者。
merge
方法的第三个参数是一个BiFunction
,它接收两个参数:当前键对应的旧值(如果存在)和你试图合并的新值,并返回一个结果值作为合并后的值。这个函数的设计完全取决于你的需求,你想怎么实现都可以,只要符合函数的签名要求即可。
注:hashmap 是 HashMap 类的一个对象。
参数说明:
key - 键
value - 值
remappingFunction - 重新映射函数,用于重新计算值
Iterator迭代器
不要在foreach循环里进行元素的remove/add操作。remove元素请使用Iterator方式,如果并发操作,需要对Iterator对象加锁。——阿里巴巴开发手册第一章第十一条强制约规
Iterator接口包含了三个主要方法:
hasNext()
:检查是否还有更多的元素可以迭代。next()
:返回迭代的下一个元素。remove()
:从底层集合中移除迭代器返回的最后一个元素。
public static void main(String[] args) {List<String> names = new ArrayList<>();names.add("Alice");names.add("Bob");names.add("Charlie");Iterator<String> iterator = names.iterator();while (iterator.hasNext()) {System.out.println(iterator.next());}}
Lambda表达式
类似JS中的箭头函数
(parameters) -> { statements; }
相关文章:
leetcode够用之java语法
常用方法 Arrays.sort()排序 import java.util.Arrays;public class Main {public static void main(String[] args) {int[] numbers {9, 2, 5, 1, 7, 3};Arrays.sort(numbers);System.out.println(Arrays.toString(numbers)); // 输出: [1, 2, 3, 5, 7, 9]} }获取str中的第…...

pdf文件怎么改变大小?在线快速压缩pdf的方法
pdf作为一种常用的文件格式,使用这种文件类型的好处在于不仅拥有更好的兼容性,还可以设置密码来保证安全性,防止未授权用户查看内容,所以现在导出文件展示都会采用这种格式的来做内容展示。当遇到pdf文件过大问题时,想…...

inferCNV:scRNA-seq数据推断染色体拷贝数变化
inferCNV分析简介 inferCNV用于探索肿瘤单细胞RNA-Seq 数据,以确定体细胞大规模染色体拷贝数改变的证据,例如整个染色体或大片段染色体的增益或缺失。这是通过与一组参考“正常”细胞(这里的正常细胞可自行定义)进行比较…...

银河麒麟操作系统通过首批软件供应链安全能力认证
麒麟软件产品供应链安全能力获双重肯定!5月30日,经北京赛迪认证中心评估,银河麒麟高级服务器操作系统V10和银河麒麟桌面操作系统V10成为首批获得软件供应链安全能力认证产品,并在操作系统类产品中名列前茅。 软件供应链安全能力评…...
【MySQL】数据库介绍|数据库分类|MySQL的基本结构|MySQL初步认识|SQL分类
目录 数据库介绍 什么是数据库 数据库分类 1.关系型数据库(RDBMS): 2.非关系型数据库: MySQL要学啥 MySQL初步认识 SQL分类 💡推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风…...

2024年6月11日 (周二) 叶子游戏新闻
万能嗅探: 实测 网页打开 某视频号、某音、某红薯、某站,可以做到无水印的视频和封面下载功能哦,具体玩法大家自行发挥吧。 WPS免登录一键修改器: 去除烦人的登录且能正常使用 日本一首部游戏《拼图世界》上架Steam 30年PS名作日本游戏厂商日本一的首部品…...

JavaSE----类和对象(中)
5. 对象的构造及初始化 5.1 如何初始化对象 通过前面知识点的学习知道,在Java方法内部定义一个局部变量时,必须要初始化,否则会编译失败。 public static void main(String[] args) {int a;System.out.println(a); }// Error:(26, 28) jav…...

STC8增强型单片机进阶开发--OLED显示器(SPI)
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目…...
在CSS中,可以使用 float 属性来设置元素浮动
在CSS中,可以使用float属性来设置元素浮动。float属性有三个值:left、right和none。 float: left;:将元素浮动到左侧。float: right;:将元素浮动到右侧。float: none;:取消元素的浮动(默认值)。…...

wordpress主题开发
科普一:wordpress 是一套用 php 这个语言写的CMS后台管理系统,即我们大家的 wordpress 网站后台是一样的,能体现我们网站外观不同的地方就在于wordpress主题(即皮肤),而这个主题的基本构成是 htmlcssjavasc…...

Elasticsearch 认证模拟题 - 17
这两道题目非常具有代表性,分别是跨集群复制和跨集群检索,需要相应的 许可 这里在虚拟机上搭建集群完成这两道题目,这里补充一下 elasticsearch 和 kibana 的配置文件 # elasticsearch.yml cluster.name: cluster2 node.name: cluster2-node…...

Swift 中更现代化的调试日志系统趣谈(一)
概述 昨天凌晨苹果刚刚发布了 WWDC2024 一系列新视频,这标志着苹果开发的一只脚已迈入人工智能(Apple Intelligence)的崭新时代。即便如此,我相信不少秃头码农们还在使用一些“远古简陋”的调试方法来剖析 2142 年的代码。 不过别担心,这一切将在小伙伴们学完本系列博文后…...
深入理解Java中的SPI机制
1. 简介 SPI(Service Provider Interface) 是Java提供的一种为服务框架提供服务实现的机制。它允许框架在运行时动态地发现服务的实现,从而实现模块化设计。在Java中,SPI机制主要用于解耦API和实现,使得应用程序可以在…...

2、python 基础学习总结
文章目录 一、python 标识符和变量命名规则1、python 标识符2 python 变量和变量命名规则 二、数据类型2.1 Numbers(数字类型)2.2 String(字符串类型)2.2.1 单引号、双引号、三引号字符串之间的区别2.2.2 转义字符 在这里插入图片…...
线程的状态!!!
NEW:(初始状态) 线程对象已经创建,但尚未启动。此时,线程还没有开始执行。 RUNNABLE:(运行状态) 线程已经启动并且正在运行,或者准备好运行,但可能由于其他线…...
Hsah碰撞(冲突)是什么?如何解决?
Hash冲突:两个不同的对象经过hash计算后得到的hash值相同,导致冲突。 解决方法: 1、开放地址法:在哈希表中寻找其他的空闲位置来存储冲突的元素。 2、拉链法:拉链法的基本思路是在每个哈希槽中存储一个链表。当发生…...

doc 和 docx 文件的区别
人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…...

泛微OA E9 浏览框显示的数据根据表单字段过滤
一、实现效果:如图所示,字段“物品名称”浏览框显示的数据根据“类型”字段进行过滤。 二、实现方法: 1、建模引擎-应用建模-浏览框-浏览框列表中单击“办公耗材”-“浏览框列表”-“操作”-“编辑” 2、sql语句中根据OA自带是示例增加where…...
AIGC涉及到的算法(一)
目录 1. 生成对抗网络(GAN) 2. 变分自编码器(VAE) 3. 扩散模型(Diffusion Model) 4. Transformer 模型 5. 自然语言处理算法(NLP) 6. 计算机视觉算法(CV) 7. 神经网络算法 8. 决策树算法 9. 遗传算法 10. 聚类算法 1. 生成对抗网络(GAN) 原理与应用:生成对…...

一种基于单片机的智能饮水机设计
随着人们生活水平的提高,对美好生活质量的追求也越来越高。饮 水机是人们日常生活不可或缺的,实现饮水机的智能化控制不但方便, 而且更加安全。本文提出一种基于单片机的智能饮水控制系统,通过传 感器实现对水温的监测,…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...

关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...

EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...

R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...