Java的格式化输出

Java的格式化输出



一个方法要进行格式化输出时,需要一个格式字符串(format string)和一个参数列表(arguments)。格式字符串可能包括确定的文本(fixed text)和一个或多个格式说明符(format specifier)。看下面例子:

String s=String.format("Duke‘s Name: %s", name);//format(String format,object arguments)

这是Java的String类的格式化方法,在这个方法中,"Duke‘s Name: %s"是这个方法的第一个参数,也就是格式字符串(format string),其中(%s)是格式说明符,除了这个以外剩下的部分就是确定的文本。name就是参数列表(arguments)。

对于一般情况下来说,格式说明符的语法如下

%[argument_index$][flags][width][.precision]conversion

•格式说明符以%符号开头,用相应的参数替换。(%符号可根据\理解,要想输出%符号,格式需要写成这样%%)

•argument_index是一个十进制整数,顾名思义,表示后面参数的位置,例如上面的1$表示name。

•flags是用于控制输出格式,但具体怎么控制还要看末尾的转换符(conversion)。

•width是一个正整数,表明要输出字符的长度。

转换符

标志

代码:


public class formatDemo {

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println("Hello World");

double x=-10000.0/3.0;

double y=5000.0/3.0;

System.out.println(x);

System.out.printf("%,10.2f\r\n",x);

System.out.printf("%-,10.2f\r\n",x);

System.out.printf("%+(,10.2f %2$.3f\r\n",x,y);

System.out.printf("%+(,10.2f %1$.3f %2$.3f %<f %<.3f\r\n",x,y);

}

}

•结果:

•日期格式转换:

日期的格式说明符特点是说明符中的conversion是由t开始,加上下表任意字符结束。



时间是用距离一个固定的时间点的毫秒数(可正可负)表示的,这个点就是所谓的纪元(epoch),它是UTC时间1970年1月1日00:00:00.UTC是 Coordinated Universal Time的缩写,与GMT(Greenwich Mean Time/格林威治时间)一样。Java将保存时间和给时间点命名分开。Date类是用来表示时间点;另一个是日立表示法Calendar类。

摘自《Java核心技术卷I》

时间: 2024-10-08 07:36:44

Java的格式化输出的相关文章

java中格式化输出

JAVA中有时候需要对计算出来的数据进行格式化,在java中使用printf可以达到目的. 格式化输出,每个以%字符开始的格式说明都用相应的参数替换,f表示浮点数,s表示字符串,d表示十进制整数,还可以加上标志符,详见下面的printf的标志. 下面先举一例: 1 public class testPrintf { 2 public static void main(String[] args){ 3 double number = 10000.0/3.0; 4 System.out.print

java基础----&gt;Java的格式化输出

在JavaSe5中,推出了C语言中printf()风格的格式化输出.这不仅使得控制输出的代码更加简单,同时也给与Java开发者对于输出格式与排列更大的控制能力.今天,我们开始学习Java中的格式化输出. 目录导航 System.out.format() Formatter类 格式化说明符 Formatter转换 简单的十六进制转换工具 友情链接 System.out.format() 由于内容比较简单,我们通过实例来加以说明.项目结构如下: Java Se5引入的format方法可用于Print

java中格式化输出大神Formatter简历

一.干嘛的?(作用) 在java中,所有新的格式化功能都有formatter类处理.可以将formatter看作一个翻译器,它将你的格式化字符串与数据翻译成需要的结果.比如很多地方格式输出都有用到,像我们在超市购物付款时候打印的购物小票啊,所以还是很实用的. 二.籍贯(所在库) java中的Formatter类位于java.util.Formatter中,所以需要用到的时候只要import进来就可以用了.注意,请选择1.5及以上版本的编译器,否则会出现"The method format(Str

java之格式化输出

参考http://how2j.cn/k/number-string/number-string-foramt/320.html#nowhere 格式化输出 如果不使用格式化输出,就需要进行字符串连接,如果变量比较多,拼接就会显得繁琐使用格式化输出,就可以简洁明了 %s 表示字符串%d 表示数字%n 表示换行 使用System.out.printf package digit; public class TestNumber { public static void main(String[] a

JAVA XML格式化输出

import org.apache.xml.serialize.OutputFormat; import org.apache.xml.serialize.OutputFormat; import org.apache.xml.serialize.XMLSerializer; import org.w3c.dom.Document; import org.xml.sax.InputSource; import org.xml.sax.SAXException; import javax.xml.

Java数字格式化输出时前面补0

/** * 里数字转字符串前面自动补0的实现. * */ public class TestStringFormat { public static void main(String[] args) { int youNumber = 1; // 0 代表前面补充0 // 4 代表长度为4 // d 代表参数为正数型 String str = String.format("%04d", youNumber); System.out.println(str); // 0001 } }

Java格式化输出

Java的格式化输出等同于String.Format,与C有很大的相似,比如 System.out.printf("%8.2f", x);在printf中,可以使用多个参数,例如: System.out.printf("Hello, %s. Next year, you'll be %d", name, age); 用于printf的转换符如下表: 转换符 类型 举例 d 十进制整数 159 x 十六进制整数 9f o 八进制整数 237 f 定点浮点数 15.9

【转】java格式化输出 printf 例子

[转]java格式化输出 printf 例子 转自http://www.cnblogs.com/TankMa/archive/2011/08/20/2146913.html#undefined import java.util.Date; /** * 使用printf输出 */ /**关键技术点 * 使用java.io.PrintStream的printf方法实现C风格的输出 * printf 方法的第一个参数为输出的格式,第二个参数是可变长的,表示待输出的数据对象 */ public clas

java 每日习题(二) 用decimalFormat格式化输出

import java.text.DecimalFormat; import java.text.NumberFormat; /* * 输出: 02 A 04 A 06 A 08 A 10 A; 12 A 14 A 16 A 18 A 20 A; 22 A 24 A 26 A 28 A 30 A; 32 A 34 A 36 A 38 A 40 A; 42 A 44 A 46 A 48 A 50 A; */ public class outputPattern { public static vo