Java学习笔记------常用API(四)

 BigDecima

 用于小数的精准计算

用来表示很大的小数

构造方法获取BigDecimal对象

public BigDecimal(double val)//有可能不精确,不建议使用

public BigDecimal(String val)

静态方法获取BigDecimal对象

public static BigDecimal valueOf(double val)//超出double范围不建议使用,传入[0,10]之间的整数不会创建新对象,返回已经创建好的对象,超出会new新的对象

常见成员方法

public static BigDecimal valueOf(double val)//获取对象

public BigDecimal add(BigDecimal val)//加法

public BigDecimal substract(BigDecimal val)//减法

public BigDecimal multiply(BigDecimal val)//乘法

public BigDecimal divide(BigDecimal val)//除法

public BigDecimal divide(BigDecimal val,精确几位,舍入模式)//除法,小数点后保留几位

例如:BigDecimal bd2=bd1.divide(bd3,2,BigDecimal.ROUND_HALF_UP);//四舍五入,保留两位小数

和BigInteger成员方法用法基本相同

正则表达式

作用一:校验字符串是否满足规则

作用二:在一段文本中查找满足要求的内容

1、校验

 

一一对应,一个对应一个字符类(括号)或者一个预定义字符

一个&就是字符 ,预定义字符需要多加\(例如:\\w)

数量词中X为字符类和预定义字符

API文档搜索Pattern即可获取正则表达式规则

public class date {public static void main(String[] args) {String qq="1234567";boolean b=qq.matches("\\d{1,9}");System.out.println(b);//true}
}

2、爬虫

import java.math.BigInteger;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Main {public static void main(String[] args) throws CloneNotSupportedException {String str="Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11," +"因为这两个是长期支持的版本,下一个长期支持的版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台";//pattern:表示正则表达式 Matcher文本适配器,作用是按正则表达式的规则取读取字符串,从头开始//可使用循环全获取//获取正则表达式对象Pattern p=Pattern.compile("Java\\d{0,2}");//获取文本适配器对象Matcher m= p.matcher(str);//循环获取Java?while(m.find()){//获取文本String s= m.group();System.out.println(s);}}
}

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

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

相关文章

SpringBoot3整合Elasticsearch8.x之全面保姆级教程

整合ES 环境准备 安装配置ES:https://blog.csdn.net/qq_50864152/article/details/136724528安装配置Kibana:https://blog.csdn.net/qq_50864152/article/details/136727707新建项目:新建名为web的SpringBoot3项目 elasticsearch-java 公…

Laravel Class ‘Facade\Ignition\IgnitionServiceProvider‘ not found 解决

Laravel Class Facade\Ignition\IgnitionServiceProvider not found 问题解决 问题 在使用laravel 更新本地依赖环境时,出现报错,如下: 解决 这时候需要更新本地的composer,然后在更新本地依赖环境。 命令如下: co…

邮件自动化:简化Workplace中的操作

电子邮件在职场中的使用对于企业和组织的日常活动起着重要的作用。电子邮件不再仅仅是一种通信方式,已经成为现代企业和组织实施日常运营的关键要素。 除了通信,电子邮件对于需求生成、流程工作流、交易审批以及各种其他与业务相关的活动至关重要。在当…

(三)丶RabbitMQ的四种类型交换机

前言:四大交换机工作原理及实战应用 1.交换机的概念 交换机可以理解成具有路由表的路由程序,仅此而已。每个消息都有一个称为路由键(routing key)的属性,就是一个简单的字符串。最新版本的RabbitMQ有四种交换机类型&a…

Node.js基础+原型链污染

Node.js基础 概述:简单来说Node.js就是运行在服务端的JavaScript,Node.js是一个基于Chrome JavaScript运行时建立的一个平台 大小写变换: toUpperCase():将小写字母转为大写字母,如果是其他字…

C语言- strcat(拼接函数的使用和模拟)

strcat&#xff08;拼接函数的使用和模拟&#xff09; strcat的语法 strcat 是 C 语言标准库中的一个字符串拼接函数&#xff0c;它用于将一个字符串&#xff08;source&#xff09;拼接到另一个字符串&#xff08;destination&#xff09;的末尾。该函数定义在 <string.h…

开箱即用之 windows部署jdk、设置nginx、jar自启

jdk安装 官网下载对应的安装包&#xff0c;解压之后放在本地指定的文件夹下 传送门https://www.oracle.com/java/technologies/downloads/#jdk21-windows 我比较喜欢下载zip方式的&#xff0c;解压之后直接能用&#xff0c;不需要安装了 配置环境 JAVA_HOME 添加path路径 …

Ubuntu 安装 KVM 虚拟化

1. Ubuntu 安装 KVM 虚拟化 KVM 是 Linux 内核中一个基于 hypervisor 的虚拟化模块&#xff0c;它允许用户在 Linux 操作系统上创建和管理虚拟机。 如果机器的CPU不支持硬件虚拟化扩展&#xff0c;是无法使用KVM(基于内核的虚拟机)直接创建和运行虚拟机的。此时最多只能使用…

3.Gen<I>Cam文件配置

Gen<I>Cam踩坑指南 我使用的是大恒usb相机&#xff0c;第一步到其官网下载大恒软件安装包,安装完成后图标如图所示&#xff0c;之后连接相机&#xff0c;打开软件&#xff0c;相机显示一切正常。之后查看软件的安装目录如图&#xff0c;发现有GenICam和GenTL两个文件&am…

ES解析word内容为空的问题和直接使用Tika解析文档的方案

导言 在上一篇文章最后&#xff0c;我们虽然跑通了ES文件搜索的全部流程&#xff0c;但是仍然出现了1个大的问题&#xff1a;ES7.3实测无法索引docx和doc文档&#xff0c;content有值但是无法解析到附件成为可读的可搜索的内容&#xff0c;附件内容为空&#xff08;附件中根本…

Mindlin厚板单元Matlab有限元编程 | 板单元 | 【Matlab源码 + 理论文本】

专栏导读 作者简介&#xff1a;工学博士&#xff0c;高级工程师&#xff0c;专注于工业软件算法研究本文已收录于专栏&#xff1a;《有限元编程从入门到精通》本专栏旨在提供 1.以案例的形式讲解各类有限元问题的程序实现&#xff0c;并提供所有案例完整源码&#xff1b;2.单元…

Linux_初识网络协议

网络协议 数据传输 发明计算机的目的是为了计算数据&#xff0c;结果有可能自己用&#xff0c;也有可能交给其他人使用&#xff0c;所以就需要多台计算机之间可以互相通信。按照通信距离&#xff0c;计算机网络大体分为&#xff1a;局域网(LAN)和广域网(WAN)。如果两台计算机距…