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);
}
}
}