格式化相关类
1、java.text 包java.text.Format 的子类
-NumberFormat:数字格式化,抽象类,
DecimalFormat:例如将1234567格式化输出为1.234,567
-MessageFormat:字符串格式化,文本格式化
-DateFormat:日期时间格式化,抽象类,SimpleDateFormat
2、java,time.format
-DateTimeFormatter
数字格式化
DecimalFormat df1,df2;
//整数部分为0,#认为整数不存在,可不写,0认为没有,但至少写一位,写0
df1 = new DecimalFormat("#.00");
df2 = new DecimalFormat(“0.00”);
System.out.println(df1.format(0.1));//.10
System.out.println(df2.format(0.1));//0.10
System.out.println(“小数部分0和#的区别”);
//#代表最多有几位,0代表必须有且能有几位
df1 = new DecimalFormat(“0.00”);
df2 = new DecimalFormat(“0.##”);
System.out.println(df1.format(0.1));//0.10
System.out.println(df2.format(0.1));//0.1
System.out.println(df1.format(0.006));//0.01
System.out.println(df2.format(0.006));//0.01
//0和#对整数部分多位是的处理是一致的,有几位写几位
df1 = new DecimalFormat(“0.00”);
df2 = new DecimalFormat("#.00");
System.out.println(df1.format(2));//2.00
System.out.println(df1.format(2));//2.00
System.out.println(df1.format(200));//200.00
System.out.println(df1.format(200));//200.00
//按指定格式输出
double d1 = 1234567.123456;
double d2 = 987654321.987654321;
df3 = new DecimalFormat("#,##0,00");
System.out.println(df3.format(d1));//1,23,45,67
System.out.println(df3.format(d2));//四舍五入9,87,65,43,22
字符串格式化
String message = “{0}{1}{2}”;
Object[] array = new Object[]{“a”,“b”,“c”};
String value = MessageFormat.format(message, array);
System.out.println(value);//abc
message = “oh,{0,number,#.##} is a good number”;
array = new Object[]{new Double(3.1415)};
value = MessageFormat.format(message, array);
System.out.println(value);//oh,3.14 is a good number
时间格式化
//将字符串转换成时间
String dateStr = “2020年8月13号”;
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(“yyyy年mm月dd日”);
LocalDate date= LocalDate.parse(dateStr,formatter);
System.out.println(date.getYear()+"-"+date.getMonthValue()+"-"+date.getDayOfMonth());
//将日期转换成字符串
LocalDateTime now = LocalDateTime.now();
DateTimeFormatter format = DateTimeFormatter.ofPattern(“yyyy年mm月dd日hh:mm:ss”);
String nowStr = now.format(format);
System.out.println(nowStr);
本文深入探讨了Java中格式化的各种技巧,包括数字、字符串和日期时间的格式化方法。通过实例展示了DecimalFormat、MessageFormat和DateTimeFormatter的使用,以及如何进行精确的格式定制。
1528

被折叠的 条评论
为什么被折叠?



