Java小例子:输出格式化数字

我们经常要将数字进行格式化,比如取2位小数,这是最常见的。Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子。下面是 一个例子:

import java.text.DecimalFormat;
public class TestNumberFormat {
public static void main(String[] args) {
double pi = 3.1415927; // 圆周率
// 取一位整数
System.out.println(new DecimalFormat("0").format(pi)); // 3
// 取一位整数和两位小数
System.out.println(new DecimalFormat("0.00").format(pi)); // 3.14
// 取两位整数和三位小数,整数不足部分以 0 填补。
System.out.println(new DecimalFormat("00.000").format(pi)); // 03.142
// 取所有整数部分
System.out.println(new DecimalFormat("#").format(pi)); // 3
// 以百分比方式计数,并取两位小数
System.out.println(new DecimalFormat("#.##%").format(pi)); // 314.16%
long c = 299792458; // 光速
// 显示为科学计数法,并取五位小数
System.out.println(new DecimalFormat("#.#####E0").format(c)); // 2.99792E8
// 显示为两位整数的科学计数法,并取四位小数
System.out.println(new DecimalFormat("00.####E0").format(c)); // 29.9792E7
// 每三位以逗号进行分隔。
System.out.println(new DecimalFormat(",###").format(c)); // 299,792,458
// 将格式嵌入文本
System.out.println(new DecimalFormat("光速大小为每秒 ,### 米。").format(c));
}
}

DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。0 表示如 果位数不足则以 0 填充,# 表示只要有可能就把数字拉上这个位置。上面的例 子包含了差不多所有的基本用法,如果你想了解更多,请参考 DecimalFormat 类的文档。

时间: 2024-10-26 05:40:04

Java小例子:输出格式化数字的相关文章

Java小例子

想当年学 BASIC 的时候,获取用户输入多简单,就一个 input:后来学 C, 也挺简单,一个 scanf():后来学 c++,同样简单,一个 cin <<:到了 Java 这里,麻烦来了. 1.简单的获取用户输入 下面是一个基本的例子,包含解释: 1.import java.io.BufferedReader; 2.import java.io.InputStreamReader; 3.import java.io.IOException; 4. 5.public class Basic

Java小例子:通过Socket发送和接收文件

这是一个简单的包含发送端和接收端的例子.发送端向接收端发送文件名和文件内容 ,接收端将收到的文件保存在磁盘上.接收端可以同时接收多个发送端传来的文件,但没 有处理文件同名的情况. 这个例子中设计了一个简单的协议.发送的内容是这样的: 文件名长度(4字节)-文件名-文件内容长度(4字节)-文件内容 . 接收端也按照这个结构进行解析.建议先看 Client 类,再看 Server 类. 01.import java.io.*; 02.import java.net.ServerSocket; 03.

Java小例子:图书馆课程设计

用 Java 模拟一个图书馆.包括创建图书.创建读者.借书.还书.列出所有图书. 列出所有读者.列出已借出的图书.列出过期未还的图书等功能.每个读者最多只能借 3 本书,每个书最多只能借 3 个星期,超过就算过期. 下面是一个命令行下的实现.这个例子的主要目的是向初学者展示内部类的好处. Command 及其子类都是 LibrarySimulator 的内部类.它们可以无阻碍的访问 LibrarySimulator 的成员.使用内部类,而不是大量的 if-else,让程序更容易扩展. 01.im

Java小例子:按指定的编码读取文本文件内容

InputStreamReader 的构造函数提供了一个参数,用于指定通过什么编码将 读取到的字节流转换成字符.下面是一个例子: 01./** 02. * 读取指定的文本文件,并返回内容 03. * 04. * @param path 文件路径 05. * @param charset 文件编码 06. * 07. * @return 文件内容 08. * 09. * @throws IOException 如果文件不存在.打开失败或读取失败 10. */ 11.private static S

Java小例子:根据Map对象的内容创建JavaBean

Java 提供 java.beans.Introspector 类,帮助我们分析 JavaBean 类当中 有哪些属性,通过它可以方便的对 JavaBean 对象属性进行取值和赋值操作.下 面是一个例子,根据 Map 对象中的内容创建 JavaBean 对象. 01.import java.beans.BeanInfo; 02.import java.beans.IntrospectionException; 03.import java.beans.Introspector; 04.impor

Java小例子:分解质因数

这个例子演示如何利用递归来完成分解质因数. import java.util.List; import java.util.ArrayList; /** * 分解质因数 */ public class GetFactor { public static void main(String[] args) { List<Long> factors = getFactors(5555566666L, 2); System.out.println(factors); } /** * 通过递归实现分解质

Java小例子:打印一个金字塔

这是最基础的例子了,每个初学者都会要做这个题目.这个题目的目的是熟悉循环特 别是嵌套循环的使用.但是如果对 Java 足够熟悉,回头来再写这个程序,就完全不是这 么写的了. 嵌套循环是非常复杂的逻辑.特别是写得很长的嵌套循环,一个不小心把 j 写成 i, 就够你调试半天的.所以嵌套循环应该尽量避免.怎么避免?将内部循环提取成一个方法 .这样每个方法里都只有一层循环,容易看,容易改,而且不容易出错. import java.util.Arrays; /** * 打印一个字符组成的金字塔 */ pu

Java小例子:创建一个可拖拽图片的面板

今天在论坛上看到帖子希望能在 Swing 中实现像拖地图一样拖拽图片.这里是一个最 简单的实现,提供了一个基本思路. import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; import java.awt.*; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.M

JAVA几个常用的数字格式化例子

在JAVA里,在数据计算时有时候会出现关于"数据精度"的问题,比如2.333333333333333333333之类的数据,这时候我们就要考虑格式化的问题了,我总结了几个,关于小数点方面的. 注意:由于这里说得很简略,因此请参照下面的Demo程序. 格式化数字 在NumberFormat类中为我们提供了格式化4种数字的方法:整数.小数.货币和百分比,通过工厂方法getNumberInstance, getNumberIntance, getCurrencyInstance, getPe