一、格式化輸出
在Java中,使用System.out.println() 或 System.out.print()輸出時,當輸出的數字位數不足時,其它部分會被空格替代。如果希望格式化輸出,需要使用String類的format()方法。format()方法的第一個參數是格式化字符串,第二個參數是要格式化的變量。其中格式化字符串中使用%來代表要被格式化的變量的位置,同時還可以設置輸出的格式,如%.2f代表保留兩位小數。示例代碼如下:
int num1 = 5; double num2 = 3.1415926; String str = "Java"; System.out.format("num1:%d,num2:%.2f,字符串:%s", num1, num2, str); // 輸出結果:num1:5,num2:3.14,字符串:Java
二、日期與時間
在Java中,日期與時間的處理是比較麻煩的,為了方便和規範,Java提供了Date、Calendar和SimpleDateFormat三個類來處理日期和時間。其中,Date類已經過時,建議使用Calendar類或SimpleDateFormat類。Calendar類提供了一些常用的方法,如獲取年份、月份、日期等,示例代碼如下:
Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.MONTH) + 1; //注意:月份從0開始計數,需要+1 int day = calendar.get(Calendar.DAY_OF_MONTH); System.out.format("現在是%d年%d月%d日", year, month, day);
SimpleDateFormat類則提供了更為靈活的日期格式轉化方法,可以將Date類型的數據格式化為字符串,也可以將字符串轉化為Date類型數據。示例代碼如下:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); String today = sdf.format(new Date()); System.out.println("當前時間為:" + today);
三、數字格式化
在Java中,如果需要將數字格式化成標準的金額表達方式,或者需要給數字加上千位分隔符,則可以使用NumberFormat類。NumberFormat類提供了getCurrencyInstance()方法用于格式化成貨幣表達方式,getNumberInstance()方法用于格式化成普通數字表達方式,示例代碼如下:
NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(Locale.CHINA); //創建貨幣格式化器 NumberFormat numberFormat = NumberFormat.getNumberInstance(Locale.CHINA); //創建普通數字格式化器 double money = 1234567.8901; System.out.println("貨幣格式化:" + currencyFormat.format(money)); //輸出結果:¥1,234,567.89 System.out.println("數字格式化:" + numberFormat.format(money)); //輸出結果:1,234,567.89
四、字符串補零
在Java中,如果需要讓字符串按照固定長度顯示,並且位數不足時用零來填充,則可以使用String.format()方法和String.format()的簡化寫法%s。示例代碼如下:
int num = 5; String str1 = String.format("%05d", num); //使用String.format()方法 String str2 = String.format("%s%03d", "ABC", num); //使用String.format()方法 String str3 = String.format("abc%02d", num); //使用%s的簡化寫法 System.out.println(str1); //輸出結果:00005 System.out.println(str2); //輸出結果:ABC005 System.out.println(str3); //輸出結果:abc05
五、數組補零
在Java中,如果需要讓數組元素在輸出時按照固定長度顯示,並且位數不足時用零來填充,則可以使用Arrays類的toString()方法和String.format()方法。示例代碼如下:
int[] arr = {3, 11, 245, 5}; String str1 = Arrays.toString(arr); //不使用補零 String str2 = Arrays.toString(Arrays.stream(arr).mapToObj(num -> String.format("%05d", num)).toArray()); //使用String.format()方法 System.out.println(str1); //輸出結果:[3, 11, 245, 5] System.out.println(str2); //輸出結果:[00003, 00011, 00245, 00005]
原創文章,作者:TDDJO,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/334253.html