Java API速记手册(持续更新ing...)
诸神缄默不语-个人CSDN博文目录
之所以干这个事原因也很简单,因为我3年没写Java了,现在在复健。
因为我最近都在用Python,所以跟Python一样的部分我就不写了。
- 最基本的框架
public class MainClass {public static void main(String[] args) {//主函数代码} }
- 打印:
System.out.println(打印内容);
- 内置对象
Java数组(未完待续) - 实例化对象
- 内置对象
int x=1;
- 自定义对象:
类名 实例名=new 类名();
- 内置对象
- 对象类型转换
- 将float转int1
- Float类的
intValue()
Float f = 10.5f; int i = f.intValue(); System.out.println("Float转Int:" + i);
- 强制转换
float f1 = 10.5f; int i1 = (int) f1; System.out.println("浮点型强制转换为整型:" + i1);
- Float类的
- 将float转int1
- 循环(Java循环(未完待续))
- 条件语句2
- if
if(布尔表达式) {//如果布尔表达式为true将执行的语句 }
- if-else
if(布尔表达式){//如果布尔表达式的值为true }else{//如果布尔表达式的值为false }
- if
- static静态方法
private私有方法
final - Arrays类
- 赋值
fill()
public static void fill(arrayname,value)
public static void fill(arrayname ,starting index ,ending index ,value)
输出:import java.util.*; public class Example{public static void main(String[] args) {int array[] = new int[10];Arrays.fill(array, 1);for (int arrays:array) {System.out.print(arrays+" ");}System.out.println();Arrays.fill(array, 3, 6, 9);for (int arrays:array) {System.out.print(arrays+" ");}} }
1 1 1 1 1 1 1 1 1 1 1 1 1 9 9 9 1 1 1 1
- 排序
sort()
public static void sort(Object[] arrayname)
对一个数组的所有元素进行排序,并且是按从小到大的顺序
public static void sort(Object[] arrayname,int fromIndex, int toIndex)
对数组部分排序,也就是对数组a的下标从fromIndex到toIndex-1的元素排序
输出:import java.util.*; public class Example{public static void main(String[] args) {int array[] = {2,5,85,30,75,66,-18,0};Arrays.sort(array,2,5);for (int arrays:array) {System.out.print(arrays+" ");}System.out.println();Arrays.sort(array);for (int arrays:array) {System.out.print(arrays+" ");}} }
Arrays.sort()的底层原理:2 5 30 75 85 66 -18 0 -18 0 2 5 30 66 75 85
假设数组长度为n
1<=n<47,使用插入排序
47<=n<286,使用快速排序
n>=286,使用归并排序或快速排序(有一定顺序使用归并排序,毫无顺序使用快速排序) - 查找
binarySearch()
用二分法查找:数组在调用前必须排序好
public static int binarySearch(Object[] a,Object key)
在一个数组的所有元素中进行查找
返回值:
在数组范围内,索引值为“ - 插入点索引值”
小于数组内元素,索引值为 – 1
大于数组内元素,索引值为 – (length + 1)
public static int binarySearch(Object[] a,int fromIndex,int toIndex,Object key)
在该数组指定的范围内进行查找
返回值:
在搜索范围内,索引值为“ - 插入点索引值”
小于搜索范围内元素,返回–(fromIndex + 1)
大于搜索范围内元素,返回 –(toIndex + 1)
输出:import java.util.*; public class Example{public static void main(String[] args) {int array[] = {2,5,85,30,75,66,-18,0};Arrays.sort(array);for (int arrays:array) {System.out.print(arrays+" ");}System.out.println();System.out.println(Arrays.binarySearch(array,5));System.out.println(Arrays.binarySearch(array,-99));System.out.println(Arrays.binarySearch(array,100));System.out.println(Arrays.binarySearch(array,60));System.out.println(Arrays.binarySearch(array,1,5,5));System.out.println(Arrays.binarySearch(array,1,5,-99));System.out.println(Arrays.binarySearch(array,1,5,100));System.out.println(Arrays.binarySearch(array,1,5,60));} }
-18 0 2 5 30 66 75 85 3 //5在数组内,返回排完序后的索引3 -1 //-99小于数组内元素,返回索引值为-1 -9 //100大于数组内元素,返回索引值为-(length+1)=-(8+1) -6 //60在数组范围内,返回索引值为-插入点索引值=-6 3 //5在搜索范围内,返回排完序后的索引3 -2 //-99小于搜索范围内元素,返回–(fromIndex + 1)=-(1+1)=-2 -6 //100大于搜索范围内元素,返回–(toIndex + 1)=-(5+1)=-6 -6 //60在搜索范围内,索引值为-插入点索引值=-6`
- 比较
equals()
如果两个指定的数组彼此相等,则返回 true。如果两个数组包含相同数量的元素,并且两个数组中的所有相应元素对都是相等的,则认为这两个数组是相等的。换句话说,如果两个数组以相同顺序包含相同的元素,则两个数组是相等的。
public static boolean equals(Object[] arrayname,Object[] arrayname2)
输出:import java.util.*; public class Example{public static void main(String[] args) {int[] array1 = {2,5,85,30,75,66,-18,0};int[] array2 = {75,2,66,30,5,85,0,-18};if(Arrays.equals(array1, array2)){System.out.println("array1等于array2");}else{System.out.println("array1不等于array2");}Arrays.sort(array1);Arrays.sort(array2);for(int arrays:array1){System.out.print(arrays+" ");}System.out.println();for(int arrays:array2){System.out.print(arrays+" ");} System.out.println();if(Arrays.equals(array1, array2)){System.out.println("排序后,array1等于array2");}else{System.out.println("排序后,array1不等于array2");}} }
array1不等于array2 -18 0 2 5 30 66 75 85 -18 0 2 5 30 66 75 85 排序后,array1等于array2
- 复制
copyOf()
将原始数组的元素,复制到新的数组中,可以设置复制的长度(即需要被复制的元素个数)public static Object[] copyOf(original,newLength)
copyOfRange()
将某个范围内的元素复制到新的数组中public static Object[] copyOfRange(original,int from,int to)
from为拷贝的开始位置(包含),to为拷贝的结束位置(不包含)
输出:import java.util.*; public class Example{public static void main(String[] args) {int[] array1 = {2,5,85,30,75,66,-18,0};int[] array2 = Arrays.copyOf(array1, 6);int[] array3 = Arrays.copyOfRange(array1, 2, 4);System.out.println(Arrays.toString(array1));System.out.println(Arrays.toString(array2));System.out.println(Arrays.toString(array3)); } }
[2, 5, 85, 30, 75, 66, -18, 0] [2, 5, 85, 30, 75, 66] [85, 30]
- 赋值
Deque<Integer> stack = new ArrayDeque<Integer>();
stack.push(Integer.parseInt(arr[i]));
stack.peek()
stack.pop();
- 列表
List<Integer> list = new ArrayList<Integer>();
列表转字符串:String str = list.toString();
String.join(" ", nums);
list.add(factor);
- 字符串按分隔符分割为数组:
String[] arr = data.split(", ");
nums = Arrays.asList(data.split(" "));
- 字符串切片:
str.substring(1, str.length() - 1);
- 检验对象是否为None(Java中None就是光声明不创建):
data.isEmpty()
- 属性和方法:
length
size()
Integer.MIN_VALUE
Integer.MAX_VALUE
- 数字转字符串:
String.valueOf(root.val)
Integer.parseInt(nums.get(i))
- Math类
min()
3
输出结果:public class Test{public static void main(String args[]){System.out.println(Math.min(12.123, 12.456)); System.out.println(Math.min(23.12, 23.0)); } }
12.123 23.0
本文撰写过程中使用的其他参考资料:
- Java 浅谈数组(Array)和列表(ArrayList)的区别 介绍Arrays常用方法_数组和列表的区别_senxu_的博客-CSDN博客
Java中Float怎么转Int类型? - IT视野 ↩︎
Java 条件语句 – if…else | 菜鸟教程 ↩︎
Java min() 方法 | 菜鸟教程 ↩︎
相关文章:
Java API速记手册(持续更新ing...)
诸神缄默不语-个人CSDN博文目录 之所以干这个事原因也很简单,因为我3年没写Java了,现在在复健。 因为我最近都在用Python,所以跟Python一样的部分我就不写了。 最基本的框架public class MainClass {public static void main(String[] args…...

FANUC机器人电气控制柜内部硬件电路和模块详细介绍
FANUC机器人电气控制柜内部硬件电路和模块详细介绍 PSU电源单元 通过背板传输了如下电源 +5 +2.0V +3.3 +24v +24E +15V -15V 主板--接口描述: 主板内部结构: 面板电路板: 引申一下 KM21 与 KM22 的作用它们分别接至操作面板上上的急停按...

LGFormer:LOCAL TO GLOBAL TRANSFORMER FOR VIDEO BASED 3D HUMAN POSE ESTIMATION
基于视频的三维人体姿态估计的局部到全局Transformer 作者:马海峰 *,陆克 * †,薛健 *,牛泽海 *,高鹏程† * 中国科学院大学工程学院,北京100049 鹏程实验室,深圳518055 来源:202…...

数据结构零基础入门篇(C语言实现)
前言:数据结构属于C学习中较难的一部分,对应学习者的要求较高,如基础不扎实,建议着重学习C语言中的指针和结构体,万丈高楼平地起。 目录: 一,链表 1)单链表的大致结构实现 2&…...

Hugging News #0904: 登陆 AWS Marketplace
每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为「Hugging News」。本期 Hugging News 有哪些有趣的消息࿰…...

Redis Redis的数据结构 - 通用命令 - String类型命令 - Hash类型命令
目录 Redis的数据结构: Redis命令: 通用命令:(通用指令是部分数据类型的,都可以使用的指令) KEYS查询命令: DEL删除命令: EXISTS判断命令: EXPIPE有效期设置命令&…...

vue中的几种name属性
vue中的几种name属性 组件名name name选项 export default{name:xxx } // 获取组件的name属性 this.$options.namevue-devtools调试工具里显示的组件名称; 未配置name选项,就是组件的文件名; vue3配置name通过defineOptions()函数 de…...
论文《面向大规模日志数据分析的自动化日志解析》翻译
论文《Towards Automated Log Parsing for Large-Scale Log Data Analysis》翻译 面向大规模日志数据分析的自动化日志解析翻译...

element-ui dialog弹窗 设置点击空白处不关闭
根据官网提供方法 场景:vue实现的网站有两个弹窗同时出现时,关闭报警,批量进度条弹窗也关闭了, 1、每一个页面都有可能出现的报警弹窗, 2、页面a批量操控硬件添加操作的进度条弹窗 开始以为是因为点击报警弹窗&#…...
第16节-PhotoShop基础课程-修复工具组-去水印
文章目录 前言1.污点修复画笔1.功能原理2.调整1.调整大小 Alt 右键 左右2.调整软硬 Alt 右键 上下 2.修复画笔工具 Alt 选取源1.常规2.选择图案 3.修补工具1.类型1.源2.目标 2.扩展 4.内容感知移动工具5.红眼工具 前言 去水印等 1.污点修复画笔 比如把下面的土豆(…...

conda的使用教程
conda的介绍 简单来说,conda软件就是来管理包的软件。以Python为例,在实际生活中,我们要处理多个不同的项目,因此,要安装不同的项目所需要的包,为了管理方便,conda就是用来打理不同项目的包&…...

客户端发现pod并与之通信
客户端发现pod并与之通信 pod需要一种寻找其他pod的方法来使用其他pod提供的服务,不像在没有Kubernetes的世界,系统管理员要在用户端配置文件中明确指出服务的精确IP地址 或者主机名来配置每个客户端应用,但同样的方法在Kubernetes中不适用 …...
Powershell模拟实现Linux下的tree命令
Powershell模拟实现Linux下的tree命令 代码 环境: P o w e r s h e l l 7 Powershell\ 7 Powershell 7 function Get-Tree {param([string]$directory ".",[int]$d 1,[switch]$f)$absolutePath Resolve-Path -Relative $directoryWrite-Host $absol…...

嵌入式基础-电路
目录 1、电流 1.1电流方向 1.2交流电和直流电 2、电压 3、电阻 4、欧姆定律 1、电流 电流是指单位时间内通过导体的电荷量,用符号I表示,单位是安培(A)。电流是电磁学中的基本量纲之一,是七个基本量纲之一。电流的…...

【JS面试题】如何通过闭包漏洞在外部修改函数中的变量
✍️ 作者简介: 前端新手学习中。 💂 作者主页: 作者主页查看更多前端教学 🎓 专栏分享:css重难点教学 Node.js教学 从头开始学习 ajax学习 前端面试题 文章目录 什么是闭包例 如何在函数外部修改闭包中变量 什么是闭包 闭包这个东西对新…...
【华为OD机试】按身高和体重排队【2023 B卷|100分】
【华为OD机试】-真题 !!点这里!! 【华为OD机试】真题考点分类 !!点这里 !! 题目描述: 某学校举行运动会,学生们按编号(1、2、3…n)进行标识,现需要按照身高由低到高排列, 对身高相同的人,按体重由轻到重排列; 对于身高体重都相同的人,维持原有的编号顺序关系。请输…...

TCP原理(全网最详细)
一、确认应答(可靠性机制) TCP诞生的初衷就是可靠传输 可靠传输是TCP最核心的部分,TCP内部很多机制都是在保证可靠传输(可以理解为发一条消息,上面显示已读未读,可靠传输就是发一条消息我知道对方是否收到…...

react 初级基础
react基本使用 项目创建 项目的创建命令 npx create-react-app react-basic创建一个基本元素进行渲染 // 1 导入react 和 react-dom import React from "react"; import ReactDOM from "react-dom";// 2 创建 react 元素 React提供了创建元素的api Rea…...
linux学习书籍推荐
《Linux程序设计(第4版)》,Neil Matthew和Richard Stones编写。这本书是Linux/UNIX专家编写的,详细介绍了Linux系统以及其他UNIX风格的操作系统上的程序开发,包括标准Linux C语言函数库和各种由Linux或UNIX标准指定的工…...

LeetCode 428. Serialize and Deserialize N-ary Tree【树,BFS,DFS】困难
本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…...

XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...

【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...

图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

android RelativeLayout布局
<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...