Java里的实用类

1.枚举

语法:

public enum 变量名{

值一,值二······}

某个变量的取值范围只能是有限个数的值时,就可以把这个变量定义成枚举类型。

2…装箱(boxing) 和拆箱(unboxing)

装箱(boxing): 把基本数据类型变成引用类型

拆箱(unboxing):把引用类型变成基本数据类型

 int i = 1;Integer o = i ;//自动装箱(在1.6版本之前是错误的)int i = 1;Integer o = new Integer(i);//手工装箱(在1.6版本之前的标准写法)Integer o = 10;//自动装箱(在1.6版本之前是错误的)int i = o; //自动拆箱(在1.6版本之前是错误的)

在1.6版本之前必须这么去做:

Integer o = new Integer(10);//手工装箱int i = o.intValue(); //手工拆箱

3.字符串类型和包装类(基本数据类型)的转换

每一个基本数据类型都有对应的包装类

包装类基本数据类
Booleanbooolean
Bytebyte
Integerint
Shortshort
Longlong
Floatfloat
Doubledouble
Characterchar
字符串类型和包装类(基本数据类型)的转换
int i = 10;
String s = i + "";
//String s = String.valueOf(i);
//String s = new String("a");
int j = Integer.parseInt(s);
double d = Double.parseDouble(s);

4.Java中的Math类

Math类是Java中提供的一个数学工具类,用于执行常见的数学运算。它提供了许多静态方法,可以用于执行数值计算和数学操作。下面是Math类的一些常用方法:

基本数学运算

  • abs(x):返回参数x的绝对值。例如:Math.abs(-5)的结果是5。
  • max(x, y):返回x和y中较大的值。例如:Math.max(3, 7)的结果是7。
  • min(x, y):返回x和y中较小的值。例如:Math.min(3, 7)的结果是3。
  • ceil(x):返回大于或等于参数x的最小整数。例如:Math.ceil(5.3)的结果是6。
  • floor(x):返回小于或等于参数x的最大整数。例如:Math.floor(5.7)的结果是5。
  • round(x):返回参数x的四舍五入值。例如:Math.round(5.5)的结果是6。

指数和对数运算

  • exp(x):返回参数x的指数值。例如:Math.exp(2)的结果是7.38905609893065,这是e的平方。
  • log(x):返回参数x的自然对数(以e为底)。例如:Math.log(10)的结果是2.302585092994046,表示10的自然对数。
  • pow(x, y):返回x的y次方。例如:Math.pow(2, 3)的结果是8,表示2的3次方。
  • sqrt(x):返回参数x的平方根。例如:Math.sqrt(25)的结果是5。

三角函数

  • sin(x):返回参数x的正弦值。例如:Math.sin(Math.PI/2)的结果是1,表示π/2的正弦值。
  • cos(x):返回参数x的余弦值。例如:Math.cos(Math.PI)的结果是-1,表示π的余弦值。
  • tan(x):返回参数x的正切值。例如:Math.tan(0)的结果是0,表示0的正切值。

随机数生成

  • random():返回一个[0, 1)范围内的随机浮点数。例如:Math.random()的结果可能是0.678987654321。

这只是Math类提供的一小部分方法,还有其他方法可以用于其他类型的数学运算。要使用Math类的方法,

5.Random类

获取伪随机数

Random ran = new Random(); 
int i = ran.nextInt(10);
System.out.println(i);

6.String类

字符串:不可变的字符序列
在这里插入图片描述

StringBuffer s = new StringBuffer();
s.append("a");
s.append("b");
s.append("c");
s.append("d");
System.out.println(s.toString());StringBuilder s1 = new StringBuilder();
s1.append("a");
s1.append("b");
s1.append("c");
s1.append("d");
System.out.println(s1.toString());//StringBuffer 是线程安全的,性能比StringBuilder低
//StringBuilder是线程不安全的
public static void main(String[] args) {String s = " adEb cde ";// 获取字符串的长度// System.out.println(s.length());// 获取指定位置的字符// System.out.println(s.charAt(2));// 将指定字符串连接到原字符串末尾// System.out.println(s.concat("d"));// 判断字符串是否包含指定字符序列// System.out.println(s.contains("ac"));// 判断字符串是否以指定字符序列结尾// System.out.println(s.endsWith("de"));// 返回指定字符在字符串中第一次出现的位置// 如果找不到,则返回-1// System.out.println(s.indexOf('f'));/* 返回指定字符序列在字符串中第一次出现的位置* System.out.println(s.indexOf("de")); // 11* System.out.println(s.lastIndexOf("de")); // 5*/// 判断字符串是否为空// System.out.println(s.isEmpty());// 将字符串中指定字符序列替换为新的字符序列// System.out.println(s.replace("de","xy"));// 根据指定的分隔符将字符串拆分为字符串数组// 返回一个数组// System.out.println(s.split("d"));/* 使用分隔符将字符串拆分为字符串数组,并逐个打印数组元素* for (String o : s.split("d")) {*     System.out.println(o);* }*/// 判断字符串是否以指定字符序列开头// System.out.println(s.startsWith("a"));// 截取子串:从索引0开始截取到索引5(包括索引0位置,不包括索引5位置)// System.out.println(s.substring(0,5));// 将字符串转换为字符数组// char[] arr = s.toCharArray();// 将字符串转换为小写字母// System.out.println(s.toLowerCase());// 将字符串转换为大写字母// System.out.println(s.toUpperCase());/* 输出带有前后空格的字符串* System.out.println("|" + s + "|");* 输出去除前后空格的字符串* System.out.println("|" + s.trim() + "|");*/// 将其他类型转换为字符串// String s1 = String.valueOf(123);
}
public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("请输入一个字符串:");String s = input.next();System.out.print("请输入要查找的字符:");String ch = input.next();int count = 0;for (int i = 0; i < s.length(); i++) {char c = s.charAt(i);if (ch.equals(c + "")) {count++;}}System.out.println(s + "中包含" + count + "个" + ch);
}

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

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

相关文章

【c++】vector模拟

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;能手撕vector模拟 > 毒鸡汤&#xff1a;在等待…

MYSQL - SQL优化

插入数据优化 小批量数据 批量插入 最好插入500-1000条比较好 手动提交事务 主键顺序插入 大批量插入数据 主键优化 页分裂 页合并 主键优化设计原则 order by优化 group by优化 limit优化 count优化 count(1)里面不一定必须1&#xff0c;数字都可以 update优化 更新字…

OSPF基础

0x00 前言 本篇简述OSPF相关知识 0x01 正文 为什么需要动态路由协议 静态路由无法适应较大的网络无法动态的随着网络的变化而自动化&#xff0c;耗费人力 动态路由协议 什么是BGP协议 基于距离矢量算法修改后的算法形成协议&#xff0c;被称为路径矢量路由协议 BGP工作…

Spring MVC中JSON数据处理方式!!!

添加json依赖 <!--spring-json依赖--><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.0</version></dependency> 注解 RequestBody&#xff1a;作…

prometheus 监控 Hyperledger Fabric 网络

本例中使用的 fabric 版本为 2.4.1 修改 orderer , peer 节点 docker-compose 文件 orderer 节点&#xff1a; environment:- ORDERER_METRICS_PROVIDERprometheus- ORDERER_OPERATIONS_LISTENADDRESS0.0.0.0:8443 ports:- 8443:8443peer 节点&#xff1a; environment:- CO…

scVI与MultiVI

scVI&#xff1a;https://docs.scvi-tools.org/en/stable/user_guide/models/scvi.html MultiVI&#xff1a;https://docs.scvi-tools.org/en/stable/user_guide/models/multivi.html 目录 scVI生成推理任务 MultiVI生成推理 scVI single cell variational inference提出了一个…

elementui dialog 回车时却刷新整个页面

到处都是坑&#xff0c;这个坑填完另一个坑还在等你。。。坑坑相连&#xff0c;坑坑不同。。。 使用el-dialog弹出一个表单&#xff0c;当我无意间敲到回车键时&#xff0c;整个页面被刷新了&#xff0c;又是一脸的懵逼。。。 经过查找文档发现解决方案为上述截图标记。。。 e…

科锐16位汇编学习笔记 03 汇编指令

指令种类 数据传送指令算数运算类指令位操作类指令串操作类指令控制转移类指令处理器控制类指令 数据传送类指令 传送类指令不影响标志位&#xff0c;**除了标志位传送指令外。** 传送指令MOV&#xff08;move&#xff09; 说明 ​ 把一个字节或字的操作数从源地址传送至…

用golang 实现给图片添加文字水印

package mainimport ("fmt""github.com/golang/freetype""image""image/draw""image/jpeg""io""os""time" )func main() {// 打开原始图片file, err : os.Open("004.jpeg")if err …

解决Qt Creator中文乱码的问题

方法1 使用QStringLiteral()包裹中文字符串 QString str1"中文测试&#xff01;"; QString str2QStringLiteral("中文测试&#xff01;");方法2 #if _MSC_VER > 1600//MSVC2015>1899,MSVC_VER14.0 #pragma execution_character_set("utf-8&qu…

软文营销无效的原因,这些细节容易被忽略

不管你是卖产品还是做服务&#xff0c;不管是大公司还是小企业&#xff0c;都需要软文营销&#xff0c;然而营销也有好坏之分&#xff0c;好的营销会给客户带来更多企业和利润&#xff0c;无效营销不仅会耽误市场竞争的效率还会带来负面影响&#xff0c;今天媒介盒子就来和大家…

SpringMVC执行流程

SpringMVC执行流程 具体步骤 第一步&#xff1a;发起请求到前端控制器(DispatcherServlet) 第二步&#xff1a;前端控制器请求HandlerMapping查找 Handler 第三步&#xff1a;处理器映射器HandlerMapping向前端控制器返回Handler&#xff0c;HandlerMapping会把请求映射为Ha…

HTML---JQurey的基本使用

文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 本章目标 &#xff08;1&#xff09;能够搭建jQuery开发环境 &#xff08;2&#xff09;使用ready( )方法加载页面、掌握jQuery语法 使用addClass( )方法和css( )方法为元素添加CSS样式使用n…

echarts设置tooltip的层级

echarts设置tooltip的层级 tooltip: {trigger: "axis",extraCssText: z-index:3, // 修改层级borderColor: "rgba(0, 170, 255)",}, 完整的option示例如下&#xff1a; option {tooltip: {trigger: "axis",extraCssText: z-index:3,axisPoin…

Python 架构模式:附录 A 到 E

附录 A&#xff1a;摘要图和表 原文&#xff1a;Appendix A: Summary Diagram and Table 译者&#xff1a;飞龙 协议&#xff1a;CC BY-NC-SA 4.0 这是我们在书的最后看到的架构&#xff1a; 表 A-1 总结了每个模式及其功能。 表 A-1. 我们的架构组件及其功能 层组件描述领域…

Linux 进程和计划任务管理

一 内核功用 进程管理、内存管理、文件系统、网络功能、驱动程序、安全功能等 1 程序 是一组计算机能识别和执行的指令&#xff0c;运行于电子计算机上&#xff0c;满足人们某种需求的信息化工具 用于描述进程要完成的功能&#xff0c;是控制进程执行的指令集 2 进程 运行…

1877_SHA512校验的使用

全部学习汇总&#xff1a; GreyZhang/toolbox: 常用的工具使用查询&#xff0c;非教程&#xff0c;仅作为自我参考&#xff01; (github.com) 之前下载很多软件&#xff0c;尤其是开源软件的文件包的时候通常会看到一个校验文件。之前下载的时候我一般都是直接忽略&#xff0c;…

金和OA C6 CarCardInfo.aspx SQL注入漏洞复现

0x01 产品简介 金和网络是专业信息化服务商,为城市监管部门提供了互联网+监管解决方案,为企事业单位提供组织协同OA系统开发平台,电子政务一体化平台,智慧电商平台等服务。 0x02 漏洞概述 金和OA C6 CarCardInfo.aspx接口处存在SQL注入漏洞,攻击者除了可以利用 SQL 注入漏洞…

SpringIOC之support模块EmbeddedValueResolutionSupport

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

小梅哥Xilinx FPGA学习笔记22——ip核之FIFO

目录 一&#xff1a;章节说明 1.1 FIFO IP简介 1.2 FIFO Generato IP 核信号框图 1.3 实验任务 二&#xff1a;FIFO 写模块设计 2.1 简介 2.2 模块框图 2.3 模块端口与功能描述 2.4 写模块代码 三 FIFO 读模块设计 3.1 简介 3.2 模块框图 3.3 模块端口与功…