深入了解Java核心类库--BigDecimal和System类
目录
- BigDecimal 类
- 一、 概述
- 常用字段
- 常用构造方法
- 常用方法
- System类
- 三个成员变量
- arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
- 总结
BigDecimal 类
一、 概述
- Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。
- 开发中,如果我们需要精确计算的结果,则必须使用BigDecimal类来操作。
- BigDecimal所创建的是对象,故我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。
常用字段
FieldsModifier and Type | Field | Description |
---|---|---|
static BigDecimal | ONE | 值1,标度为0 |
static BigDecimal | TEN | 值10,标度为0 |
static BigDecimal | ZERO | 值0,标度为0 |
常用构造方法
Constructor | Description |
---|---|
常用 | |
BigDecimal(int) | int→BigDecimal |
BigDecimal(long) | long→BigDecimal |
少用 | |
BigDecimal(double) | double → BigDecimal |
BigDecimal(String) | BigDecimal的字符串→ BigDecimal |
常用方法
Modifier and Type | Method | Description |
---|---|---|
BigDecimal | add(BigDecimal) | BigDecimal对象中的值相加,返回这个对象 |
BigDecimal | subtract(BigDecimal subtrahend) 对象中的值相减,返回这个对象 | |
BigDecimal | multiply(BigDecimal) | BigDecimal对象中的值相乘,返回这个对象 |
BigDecimal | divide(BigDecimal) | BigDecimal对象中的值相除,返回这个对象 |
double | doubleValue() | 将 BigDecimal转换为 double |
float | floatValue() | 将 BigDecimal转换为 float |
int | intValue() | 将 BigDecimal成 int |
long | longValue() | 将 BigDecimal转换为 long |
String | toString() | 将BigDecimal对象的数值转换成字符串 |
BigDecimal | abs() | 返回绝对值 |
int | compareTo(BigDecimal) | 比较大小,小返回-1 |
BigDecimal | max(BigDecimal) | 返回较大的值 |
BigDecimal | min(BigDecimal) | 返回较小的值 |
BigDecimal | movePointLeft(int n) | 返回小数点向左移动n位的值 |
BigDecimal | movePointRight(int n) | 返回小数点向右移动n位的值 |
BigDecimal | multiply(BigDecimal multiplicand) | 返回这个值的相反数 |
BigDecimal | pow(int n) | 返回this^n |
BigDecimal | setScale(int n) | 确定小数点后的位数n |
static BigDecimal | valueOf(long/double) | 值转换为 BigDecimal |
System类
三个成员变量
system中包含了三个成员变量:
in
标准输入流(键盘输入)out
标准输出流(显示器)err
标准错误输出流(显示器)
Modifier and Type | Field | Description |
---|---|---|
static InputStream | in | “标准”输入流(键盘输入) |
static PrintStream | out | “标准”输出流(显示器) |
static PrintStream | err | “标准”错误输出流(显示器) |
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
将指定源数组中的数组从指定位置开始复制到目标数组的指定位置
Object src
:源数组
int srcPos
:开始位置
Object dest
:目标数组
int destPos
:目标数组起始位置
int length
:传的长度
System.currentTimeMillis();
返回毫秒数
gc()
运行垃圾收集器
exit(int status)
- 终止当前正在运行的java虚拟机。
int status是状态码。根据惯例,非0的状态码表示异常终止,0表是终止,并且该方法永远不会正常返回。
- exit是唯一能够退出程序并不执行finally的情况。
退出虚拟机会直接终止整个程序,这时的程序已经不是从代码的层面来终止程序,所以finally不会被执行。
总结
本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注我们的更多内容!
赞 (0)