System.out.printf与System.out.format

时间:2013-04-26 10:39:36

标签: java format printf

System.out.printfSystem.out.format完全相同,或者它们在某种程度上有所不同?

4 个答案:

答案 0 :(得分:41)

System.outPrintStream,引用了PrintStream.printf

的javadoc
  

调用此方法   表格out.printf(l, format, args)   行为与调用完全相同   out.format(l, format, args)

答案 1 :(得分:10)

没有区别。他们都表现出same

答案 2 :(得分:10)

printf 重载表单的实际实现

public PrintStream printf(Locale l, String format, Object ... args) {
    return format(l, format, args);
}

public PrintStream printf(String format, Object ... args) {
        return format(format, args);
}

使用格式方法的重载表单

public PrintStream format(Locale l, String format, Object ... args)

public PrintStream format(String format, Object ... args)

分别

答案 3 :(得分:0)

printfformat 方法的主要区别在于:

  • printf:将格式化后的字符串打印到控制台,很像 System.out.println() 但是
  • format:方法返回一个格式化的字符串,您可以按照自己的方式存储或使用该字符串。

其他用途的性质根据其功能而有所不同。向数字添加前导零的示例:

int num = 5;
String str = String.format("%03d", num);  // 005
System.out.printf("Original number %d, leading with zero : %s", num, str);
// Original number 5, leading with zero : 005