日期时间格式化
DateFormat类:不能自定义格式
Date date = new Date("2020/12/12 13:24:34");
//日期全部数据,显示为美国语言环境,结果:Saturday, December 12, 2020
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL,Locale.US);
//日期全部数据,显示为中国语言环境,结果:2020年12月12日 星期六
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL,Locale.CHINA);
//日期全部数据包括时分秒,显示为中国语言环境,结果:2020年12月12日 星期六 下午01时24分34秒
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.LONG,Locale.CHINA);
String formatDate = df.format(date);//格式化显示
SimpleDateFormat类
Date date = new Date("2020/12/12 13:24:34");
//美国语言环境,自定义显示格式。结果:2020-12-12 Saturday
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd EEEE",Locale.US);
//中国语言环境,自定义显示格式。结果:2020-12-12
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd",Locale.CHINA);
String formatDate = sdf.format(date);//格式化显示
DateTimeFormatterr类(JDK1.8)
ZonedDateTime date = ZonedDateTime.now();
//美国语言环境,自定义显示格式。结果:2022-03-07 Monday
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd EEEE",Locale.US);
//中国语言环境,自定义显示格式。结果:2020-12-12
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd",Locale.CHINA);
String formatDate = dtf.format(date);//格式化显示
数字格式化
NumberFormat类:不能自定义
NumberFormat nf = NumberFormat.getInstance(Locale.CHINA);//中国语言环境
String formatNumber = nf.format(123456.12);//格式化,结果:123,456.12
//货币
NumberFormat nf = NumberFormat.getCurrencyInstance(Locale.CHINA);//中国语言环境
String formatNumber = nf.format(123456.12);//格式化,结果:¥123,456.12
NumberFormat nf = NumberFormat.getNumberInstance(Locale.CHINA);//中国语言环境
String formatNumber = nf.format(123456.12);//格式化,结果:123,456.12
//四舍五入整数
NumberFormat nf = NumberFormat.getIntegerInstance();//系统语言环境
String formatNumber = nf.format(123456.12);//格式化,结果:123,456
//百分比
NumberFormat nf = NumberFormat.getPercentInstance();//中国语言环境
String formatNumber = nf.format(123456.12);//格式化,结果:12,345,612%
DecimalFormat类:自定义格式
//货币
DecimalFormat df = new DecimalFormat("¥###,###.##");//自定义格式
String format = df.format(123456.12567);//格式化数据,结果:¥123,456.13
//自定义格式,0不占位
DecimalFormat df = new DecimalFormat("###,###.###");//自定义格式
String format = df.format(123456.1234);//四舍五入格式化数据,结果:123,456.126,不足3位,没有0占位
//自定义格式,0占位
DecimalFormat df = new DecimalFormat("###,##0.000");//自定义格式
String format = df.format(123456.12);//格式化数据,结果:123,456.120
//带单位
DecimalFormat df = new DecimalFormat("###,##0.000 KG");//自定义格式
String format = df.format(123456.12);//格式化数据,结果:123,456.120 KG
//科学计数法
DecimalFormat df = new DecimalFormat("0.00E000");//自定义格式
String format = df.format(123456.12);//格式化数据,结果:1.23E005
//千分比
DecimalFormat df = new DecimalFormat("0.00\u2030");//自定义格式
String format = df.format(0.12);//格式化数据,结果:120.00‰
//百分比
DecimalFormat df = new DecimalFormat("0.00%");//自定义格式
String format = df.format(0.12);//格式化数据,结果:12.00%
文本格式化
System.out.printf();