首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Java 輸出三劍客:print、println、printf 差異與格式化實戰

     編輯:Java 程式設計入門

核心差異一覽

方法換行格式化典型用途
print()否,光標停末尾否拼接輸出、進度提示
println()是,光標移下行行首否單行日誌、結果輸出
printf()否(需手動 \n)是,C 風格佔位符對齊表格、精度控制、複雜格式

ln = line 去元音簡寫,易記憶。

printf 格式化語法詳解

System.out.printf("格式化字串", 參數列表);

常用佔位符

佔位符對應類型說明
%d整數十進制
%o整數八進制
%x / %X整數十六進制 (小寫/大寫)
%f浮點數十進制,默認 6 位小數
%.2f浮點數保留 2 位小數
%e / %E浮點數科學記數法
%g / %G浮點數自動選 %f 或 %e,較短者
%s字串toString() 結果
%c字符單字符
%b布爾true/false
%%字面量輸出 % 本身

寬度與對齊控制

%5d   // 寬度 5,右對齊,不足左補空格
%-5d  // 寬度 5,左對齊
%05d  // 寬度 5,右對齊,不足左補 0
%5.2f // 總寬 5 含小數點,小數 2 位

實戰範例

int i = 4;
double j = 5.0;

System.out.print("print: i=" + i);        // 無換行
System.out.println(" println: i=" + i);   // 換行
System.out.printf("printf: i=%d, j=%.2f%n", i, j); // 格式化 + %n 換行

輸出:

print: i=4 println: i=4
printf: i=4, j=5.00

進階技巧:動態寬度、參數索引

// 動態寬度
System.out.printf("%" + width + "d", num);

// 參數索引(複用參數、調整順序)
System.out.printf("%1$d %1$05d %2$s", 42, "hello");
// 輸出: 42 00042 hello

常見坑點提醒

  • 參數順序與佔位符一一對應,類型不匹配拋 IllegalFormatConversionException
  • %f 默認 6 位小數,財務場景務必用 %.2f 或 BigDecimal
  • 換行跨平台用 %n,而非硬編碼 \n
  • System.out.format() 等同於 printf()
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved