格式化字符串(日期显示、科学计数等)

格式化字符串主要有两类:时间日期格式化,常规数据类型格式化。

使用格式: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));
    }
}

 

posted @ 2017-09-27 12:47  夕西行  阅读(678)  评论(0编辑  收藏  举报