Java常用类库API之数字处理工具类
数字处理工具类BigDecimal和DecimalFormat
Java提供的java.text.DecimalFormat类,帮助我们用最快的速度将数据格式化为我们想要的样子。例如,取两位小数
import java.math.BigDecimal;
import java.text.DecimalFormat;
import org.junit.Test;
public class BigNumber {
/**测试DecimalFormat类*/
@Test
public void testDecimalFormat() {
double pi = 3.1415926;
// 取一位整数
System.out.println(new DecimalFormat("0").format(pi));// 输出3
// 取两位整数和两位小数,整数或小数部分不足均以0填补
System.out.println(new DecimalFormat("00.00").format(pi));// 输出03.14
// 以百分比方式技术,并取三位小数
System.out.println(new DecimalFormat("#.##%").format(pi));// 输出314.16%
}
/**测试BigDecimal类*/
@Test
public void testBigDecimal() {
BigDecimal b1 = new BigDecimal("321.699");
BigDecimal b2 = new BigDecimal("123.996");
System.out.println(b1.add(b2));// 加法
System.out.println(b1.subtract(b2));// 减法
System.out.println(b1.multiply(b2));// 乘法
// System.out.println(b1.divide(b2));//除法
// 除不尽会报java.lang.ArithmeticException: Non-terminating decimal expansion; no
// exact representable decimal result.
}
}
这里我没有使用main方法,是因为我用了JUnit单元测试,我用的版本是JUnit 5。
扩展:单元测试JUnit
若用eclipse 开发,可不用下载JUnit jar包,eclipse内部集成了,我们只需要引入即可,引入步骤如下:
1、选中项目,右键Build--->Add Library
2、弹出来的界面,选中 JUnit,点击 next
3、选中 Junit 的版本,一般我们都用 4.0 以上的。点击 Finish
如何运行 Junit呢?鼠标放在需要测试的方法中(被测试的方法前面要加上@Test标记),右键,Run As ---->JUnit Test
结果出现如下的绿色横条,则测试通过,红色横条,则测试失败
Java常用类库API之数字处理工具类的更多相关文章
- Java常用类库API之MD5简单使用
常用类库--MD5简单使用 MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash v ...
- Java常用类库--观察者设计模式( Observable类Observer接口)
如果要想实现观察者模式,则必须依靠java.util包中提供的Observable类和Observer接口. import java.util.* ; class House extends Obse ...
- Java常用类库(一) : Object 和日期类的简单使用
顶哥说:Java是世界的,但项目不是! Java有非常多的类库,而我们不会也不用都去学习,毕竟你也仅仅掌握了你手机20%的功能却足够你使用,不是吗? 今天介绍以下类: l Object l Dat ...
- [Windows Phone]常用类库&API推荐
原文 [Windows Phone]常用类库&API推荐 简介: 把自己的应用程序搭建在稳定的API之上,这会使得我们在开发时能把精力都集中在程序的业务逻辑之上,避免重复造轮子,并且使得程序结 ...
- JAVA(三)JAVA常用类库/JAVA IO
成鹏致远 | lcw.cnblog.com |2014-02-01 JAVA常用类库 1.StringBuffer StringBuffer是使用缓冲区的,本身也是操作字符串的,但是与String类不 ...
- Java 常用类库与技巧【笔记】
Java 常用类库与技巧[笔记] Java异常体系 Java异常相关知识 Java在其创立的时候就设置了比较有效的处理机制,其异常处理机制主要回答了三个问题:what,where,why what表示 ...
- Google的Java常用类库 Guava资料
java的人应该都知道Apache commons的java常用类库吧,这个Guava和commons一样,封装出一套比jdk本身提供的常用类库强大.既然有了这个这么强大的类库,我们就没必要重复造轮子 ...
- Java判断不为空的工具类总结
1.Java判断是否为空的工具类,可以直接使用.包含,String字符串,数组,集合等等. package com.bie.util; import java.util.Collection; imp ...
- Java字符串转16 进制工具类Hex.java
Java字符串转16 进制工具类Hex.java 学习了:https://blog.csdn.net/jia635/article/details/56678086 package com.strin ...
随机推荐
- HTML,CSS,JavaScript的思维导图
一个思维导图是把抽象的事物具体化,以一个东西为思想核心内容,映射出一系列的组成及作用 影响的内容. HTML的思维导图 HTML是一种超文本标记语言.我认为要学习一门语言首先要知道其是什么,编辑工具是 ...
- JavaScript 查看stack trace
How can I get a JavaScript stack trace when I throw an exception? Edit 2 (2017): In all modern brows ...
- Linux网卡驱动分析
以太网(Ethernet)是一种计算机局域网组网技术,基于IEEE 802.3标准,它规定了包括物理层的连线.电信号和介质访问层协议. Ethernet接口的实质是MAC通过MII总线控制PHY的过程 ...
- yield(放弃、谦逊、礼让) - 瞬时的,暂时放了马上再抢
两个线程抢占CPU各自执行任务,代码如下: public class Demo03 { public static void main(String[] args) throws Interrupte ...
- CBAM: Convolutional Block Attention Module
1. 摘要 作者提出了一个简单但有效的注意力模块 CBAM,给定一个中间特征图,我们沿着空间和通道两个维度依次推断出注意力权重,然后与原特征图相乘来对特征进行自适应调整. 由于 CBAM 是一个轻量级 ...
- Delphi XE2 之 FireMonkey 入门(16) - 滤镜: 实例测试
窗体上需要 TImage.TOpenDialog 和六个按钮. unit Unit1; interface uses System.SysUtils, System.Types, System.U ...
- 阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第5节 final关键字_1_final关键字概念与四种用法
英文的含义和程序中的含义是相同的.最终的,不可改变的
- 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_01 Collection集合_6_迭代器的实现原理
- 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_08 Map集合_9_Hashtable集合
是最早期的双列集合 同步就表示是单线程 value也不允许为空
- Docker安装及部署实例.Net Core
1.什么是Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱 ...