深入了解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)

相关推荐

  • 重新认识Java的System.in

    重新认识 Java 的 System.in 以前也写过不少命令行的程序,处理文件时总需要通过参数指定路径,直到今天看资料时发现了一种我自己从来没用过的方式.这种方式让我重新认识了System.in. 下面是一个简单的Cat 命令的例子,这里提供了-n参数用于配置是否显示行号. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.A

  • java中BigDecimal和0比较的示例代码

    BigDecimal 和 0 比较大小 调用BigDecimal中的compareTo方法, 如: int i = bigDecimal.compareTo(BigDecimal.Zero); i=0:表示bigDecimal的值  等于 0 i=1:表示bigDecimal的值与 大于0 i=-1:表示bigDecimal的值与 小于 0 参考案例 BigDecimal num= new BigDecimal("18"); int i=num.compareTo(BigDecimal

  • Java 语言中Object 类和System 类详解

    Object是java所有类的基类,是整个类继承结构的顶端,也是最抽象的一个类.大家天天都在使用toString().equals().hashCode().waite().notify().getClass()等方法,或许都没有意识到是Object的方法,也没有去看Object还有哪些方法以及思考为什么这些方法要放到Object中. 一.Java Object类简介-所有类的超类 Object 是 Java 类库中的一个特殊类,也是所有类的父类.也就是说,J ava 允许把任何类型的对象赋给

  • Java之BigDecimal实现详解

    一.BigDecimal概述 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更大或者更小的数进行运算和处理.一般情况下,对于那些不需要准确计算精度的数字,我们可以直接使用Float和Double处理,但是Double.valueOf(String) 和Float.valueOf(String)会丢失精度.所以开发中,如果我们需要精确计算的结果,则必须使用Bi

  • Java Math类、Random类、System类及BigDecimal类用法示例

    本文实例讲述了Java Math类.Random类.System类及BigDecimal类用法.分享给大家供大家参考,具体如下: Math类 Math的方法 package cn.itcast_01; /* * Math:用于数学运算的类. * 成员变量: * public static final double PI * public static final double E * 成员方法: * public static int abs(int a):绝对值 * public static

  • 深入了解Java核心类库--BigDecimal和System类

    目录 BigDecimal 类 一. 概述 常用字段 常用构造方法 常用方法 System类 三个成员变量 arraycopy​(Object src, int srcPos, Object dest, int destPos, int length) 总结 BigDecimal 类 一. 概述 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算. 开发中,如果我们需要精确计算的结果,则必须使用BigDecimal类来操作. BigDec

  • 深入了解Java核心类库--Date,Calendar,DateFormat类

    目录 一.Date 1.1 构造方法 1.1.1 Date() 1.1.2 Date(long date) 1.2 常用方法 1.3 其他方法 二.Calendar(抽象) 2.1 获取时间 get() 2.2 设置时间 2.3 时间计算 2.4 其它方法 三.DateFormat(抽象) 3.1 构造方法 总结 一.Date Date类表示特定的时刻,精度为毫秒 Date的两个附加功能:Calendar.DateFormat Calendar类应该用于在日期和时间字段之间进行转换 DateFo

  • Java常用类库Apache Commons工具类说明及使用实例详解

    Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍. 组件 功能介绍 BeanUtils 提供了对于JavaBean进行各种操作,克隆对象,属性等等. Betwixt XML与Java对象之间相互转换. Codec 处理常用的编码方法的工具类包 例如DES.SHA1.MD5.Base64等. Collections java集合框架操作. Compress java提供文件打包 压缩类库. Con

  • 深入理解JAVA基础类库中对象Object类

    引言 Object类是所有类.数组的父类,位于java.lang 包下也就是说,Java允许把所有任何类型的对象赋给Object类型的变量.当定义一个类时没有使用extends关键字为它显式指定父类,则该类默认继承Object父类. 例如: public class Dog{ ...... } 等价于: public class Dog extends Object { ...... } Object常用方法 Object 类属于java.lang包,此包下的所有类在使用时无需手动导入,系统会在

  • 深入了解Java核心类库--Math类

    目录 Java常用类库Math 一.Field Summary 二.Method Summary 2.1 常用方法 2.1.1 部分方法源码 2.2 算数运算 2.3 三角函数 2.4 其他不常用方法 总结 Java常用类库Math 类Math包含用于执行基本数字运算的方法,例如基本指数,对数,平方根和三角函数 一.Field Summary Modifier and Type Field Description static double E 自然对数的基数 static double PI

  • 深入了解Java核心类库--Arrays类

    目录 Java常用类库Arrays 一.常用方法 1.1 toString 1.2 Sort 1.2.1 sort​(T[] a, int fromIndex, int toIndex) 1.2.2 Sort(T[] a) 1.2.3 其它 1.3 copyOf 1.4 mismatch 1.5 binarySearch 1.5.1 binarySearch​(T[] a, int fromIndex, int toIndex, T key) 1.5.2 binarySearch​(T[] a,

  • 深入了解Java核心类库--Objects类

    目录 1 Objects 1.1 Objects方法 1.2 Objects常用方法 1.2.1 equals(Object a, Object b) 1.2.2 isNull(Object obj) 1.2.3 nonNull(Object obj) 1.2.4 requireNonNull(T obj) 1.3 Objects源码 2 区别于Object 2.1 Object构造方法 2.2 Object其他方法 2.2.1 equals(Object obj) 2.2.2 toString

  • 深入了解Java核心类库--String类

    目录 一. 简介 零碎知识点 字符串常量池 堆在逻辑上的划分 二. 创建对象 2.1.1 直接引用常量区 2.1.2 使用构造方法 2.1.3 两种实例化方法的区别 三.常用方法 总结 一. 简介 零碎知识点 extends Object implements serializable,Comparable< String >,charSequence String类表示字符串,所有字符串文字都是此类的对象 字符串是不变的,值在创建后无法更改 对象一旦声明则不可改变,改变的只是地址,原来的字符

  • 深入了解Java核心类库--泛型类

    目录 1.1 泛型的使用 1.1.1 泛型类 1.1.2 泛型接口 1.1.3 泛型方法 1.1.4 tips 1.2 泛型限制类型 1.3 通配符? 1.3.1 上界限定 1.3.2 下届限定 1.3.3 无限制 1.4 泛型的作用 总结 1.1 泛型的使用 泛型:参数化模型(不确定,后续使用时指定类型) 1.1.1 泛型类 1.1.2 泛型接口 实现接口时,可以选择或不选择指定泛型类型 public interface IntercaceName<T>{ T getData(); } ①指

  • java核心编程之文件过滤类FileFilter和FilenameFilter

    本文实例为大家分享了文件过滤类FileFilter和FilenameFilter,供大家参考,具体内容如下 1.FileFilter package test; import java.io.File; import java.io.FileFilter; public class FileFilterTest implements FileFilter { private String extension; public FileFilterTest(String extension) { t

随机推荐