http://tool.oschina.net/apidocs/apidoc?api=jdk-zh
https://www.jianshu.com/p/c8f16cab35e1#
参考官方的 api说明文档,format是一个抽象接口,已知的实现类有DateFormat,MessageFormat,NumberFormat
关于时间的DateFormat,我们一般是直接使用它的子类:SimpleDateFormat,具体的y,m,d,之类的用法可以参考百度
例子如下:获取当前系统的时间并格式化
package test; import java.text.SimpleDateFormat; import java.util.Date; import org.json.JSONArray; import org.json.JSONObject; public class test2 { public static void main(String[] args) { //获取系统当前时间 long currentTime = System.currentTimeMillis(); Date date = new Date(currentTime); System.out.println(date); //进行格式化,获取自己想要的格式 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd日HH时mm分"); System.out.println(dateFormat.format(date)); } }
关于NumberFormat,它的直接实现子类有ChoiceFormat和DecimalFormat,我们一般使用DecimalFormat
package test; import java.text.DecimalFormat; public class test5 { 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)); //光速大小为每秒299,792,458米 } }
再举一个例子:比如格式化
package test; import java.text.DecimalFormat; /* *实现格式化,比如1格式化成[001],1001格式化成[001][001],每三位一组 */ public class test { public static void main(String[] args) { DecimalFormat mFormat = new DecimalFormat("[000]"); String t1 ="1"; System.out.println(mFormat.format(Integer.parseInt(t1))); String t2 = "1002"; String substring2 = t2.substring(t2.length()-3,t2.length()); String substring1 = t2.substring(0,t2.length()-2); System.out.println(mFormat.format(Integer.parseInt(substring1))+mFormat.format(Integer.parseInt(substring2))); } }