1、DecimalFormat格式化數字
1 import java.text.DecimalFormat; 2 import java.util.Scanner; 3 4 /** 5 * 6 * 功能描述: 練習Lianxi06四舍五入 7 * 8 * 9 * @ Author: apple. 10 * @ Date: 2019/11/22 7:56 PM 11 */ 12 public class LianXi07 { 13 14 private static Scanner sc = new Scanner(System.in); 15 /*DecimalFormat格式化數字*/ 16 public static void main(String[] args) { 17 System.out.println("輸入一個數:"); 18 double num = sc.nextDouble(); 19 // 創建DecimalFormat對象 20 DecimalFormat df = new DecimalFormat("#.00"); 21 String sum = df.format(num);// 調用df.format(num1)方法,傳入參數 sum 接收值 22 System.out.println("四舍五入保留兩位小數后:num="+sum); 23 } 24 }
運行結果:
DecimalFormat("#.00")方法中,"#.00"為設置數字格式,# 表示只要有可能就把數字拉上這個位置。小數點后有兩位數字,有幾個0表示小數點后保留幾位小數,不足用0補齊,如上程序,輸入num1為2.5,設置保留兩位小數,不夠0補齊,所以輸出num=2.50。
2、字符串格式化-String.format()的使用
String類的format()方法用於創建格式化的字符串以及連接多個字符串對象
1 private static Scanner sc = new Scanner(System.in); 2 public static void main(String[] args) { 3 System.out.println("請輸入一個小數:"); 4 //hasNextDouble()判斷是否輸入的數是數字。 5 while (!sc.hasNextDouble()){ 6 System.out.println("輸入有誤請重輸:"); 7 sc.next(); 8 } 9 double num = sc.nextDouble(); 10 // 調用df.format(num1)方法,傳入參數 11 System.out.println(String.format("四舍五入保留兩位小數后:num="+"%.2f",num));
運行結果:
format()方法中的兩個參數,format("%.2f", num2),例子中的第一個參數為數字格式,百分號表示小數點前的整數部分,“.”表示小數點,數字2表示保留小數位的個數,不足用0補齊,如上程序。“f”表示浮點類型,第二個參數為傳入需要更改格式的參數。