格式化字符串(日期显示、科学计数等)
格式化字符串主要有两类:时间日期格式化,常规数据类型格式化。
使用格式:String a=String.format("转换符",对象);
对于时间日期,又有String a=String.format(语言环境,"转换符",对象);默认中文环境
//时间日期格式化 import java.util.Date; import java.util.Locale;//指定语言时载入 public class cha { public static void main(String[] args) { Date today=new Date(); String a=String.format(Locale.US,"%tb",today);//使用英语 String b=String.format("%tb",today);//默认中文 System.out.println("月份:"+a); System.out.println("月份:"+b); //年月日时分秒 String c=String.format("%tY",today); String d=String.format("%tm",today); String e=String.format("%td",today); String f=String.format("%tp",today);//上午下午 String g=String.format("%tI",today); String h=String.format("%tM",today); String i=String.format("%tS",today); System.out.println("日期:"+c+"年"+d+"月"+e+"日"+" "+f+g+":"+h+":"+i); String j=String.format("%tT",today);//时分秒组合 System.out.println("日期:"+c+"年"+d+"月"+e+"日"+" "+f+j); } }
//常规数据类型格式化 public class cha { public static void main(String[] args) { String a=String.format("%d",5/3);//十进制整型 String b=String.format("%b",1>2);//布尔 String c=String.format("%s","abcd");//字符串 String d=String.format("%c",'1');//单个字符 String e=String.format("%e",2000.0);//科学计数,只针对浮点型 System.out.println("十进制整型:"+a); System.out.println("布尔:"+b); System.out.println("字符串:"+c); System.out.println("单个字符:"+d); System.out.println("科学计数:"+e); } }
//货币格式 import java.util.Scanner;//载入扫描器 import java.util.Locale;//载入语言环境 import java.text.NumberFormat; public class Format { public static void main(String[] args) { Scanner scan=new Scanner(System.in);//创建输入流扫描器 System.out.println("please input number:"); double num=scan.nextDouble();//获取数字 NumberFormat fm=NumberFormat.getCurrencyInstance(Locale.CHINA); System.out.println(fm.format(num)); fm=NumberFormat.getCurrencyInstance(Locale.US); System.out.println(fm.format(num)); } }