zoukankan      html  css  js  c++  java
  • 3.7.2 格式化输出

        可以使用System.out.print(x)将数值x输出到控制台上。这条命令将以x对应的数据类型所允许的最大非0数字位数打印输出x。例如:
                double x = 10000.0 / 3;
                System.out.println(x);   // 3333.3333333333335
     
        Java SE 5.0沿用了C语言库函数中的printf方法。例如,调用
                double x = 10000.0 / 3;
                System.out.printf("%8.2f",x);   // 3333.33
                double x1 = 10000000000.0 / 3;
                System.out.printf("%8.2f",x1);   // 3333333333.33
     
        %8.2f的含义是可以用8个字符的宽度和小数点后两个字符的精度打印x。也就是说,打印输出一个空格和7个字符(包括小数点)。当然,如果结果的总位数超过8,还是整数部分按实际展示,小数部分还是只显示2位。
     
        在printf中,可以使用多个参数,例如:
            System.out.printf("Hello,%s. Next year . you'll be %d", name, age);
     
     
                Scanner sc = new Scanner(System.in);
                
                System.out.println("请输入您的姓名");
                String name = sc.nextLine();
                System.out.println("请输入您的年龄");
                int age = sc.nextInt();
                
                System.out.printf("Hello, %s. Next year . you'll be %d .", name, age);
     
        每一个以%字符开始的格式说明符都用相应的参数替换。
     
    转换符
    类型
    举例
    d
    十进制整数
    159
    x
    十六进制整数
    9f
    o
    八进制整数
    237
    f
    定点浮点数
    15.9
    e
    指数浮点数
    1.59e+01
    g
    通用浮点数
    1537.00
    a
    十六进制浮点数
    0x1.fccdp3
    s
    字符串
    Hello
    c
    字符
    H
    b
    布尔
    True
    h
    散列码
    42628b2
    tx或Tx
    日期时间
    已经过时,应当改为使用java.time类
    %
    百分号
    %
    n
    与平台有关的行分隔符
    --
     
        另外,还可以给出控制格式化输入的各种标志。例如,逗号标志增加了分组的分隔符。
     
    标志
    目的
    举例
    +
    打印正数和负数的符号"%+f",e
     
    空格
    在正数之前添加空格"% 10d",e
    | 3333.33|
    0
    数字前面补0"%010d",e
    003333.33
    -
    左对齐
    |3333.33  |
    (
    将负数括在括号内
    (3333.33)
    ,
    添加分组分隔符
    3,333.33
    #(对于f格式)
    包含小数点
    3,333.
    #(对于x或0格式)
    添加前缀0x或0
    0xcafe
    $
    给定被格式化的参数索引。例如,%1$d, %1$x将以十进制和十六进制格式打印第一个参数"%1$x",e
    159 9f
    <
    格式化前面说明的数值,例如,%d%<x以十进制和十六进制打印同一个数值"%d %<x",e
    159 9f
     
        注释:可以使用s转换符格式化任意的对象。对于任意实现了Formattable接口的对象都将调用formatTo方法;否则将调用toString方法,它可以将对象转换为字符串。
  • 相关阅读:
    makefile中的wildcard和patsubst
    makefile中=,:=,?=,+=区别
    hash函数查找和ASL计算
    ubuntu apt-get提示no dependencys怎么办
    增广贤文是不多的古典珍宝之一
    如何打印查看c++stack<..>中的内容(不使用pop,top)
    c/c++标准IO重定向
    c/c++使用#define,#ifdef,#endif将debug代码分离
    未完待续
    c++重载覆盖重定义多态其他别名区别
  • 原文地址:https://www.cnblogs.com/avention/p/10123703.html
Copyright © 2011-2022 走看看