數字格式化
1 private static void f() { 2 //保留兩位小數:四舍五入 3 DecimalFormat decimalFormat = new DecimalFormat(".##"); 4 String format = decimalFormat.format(12.123476); 5 //12.12 6 System.out.println(format); 7 8 //保留兩位小數:百分比形式 9 decimalFormat=new DecimalFormat(".##%"); 10 String format1 = decimalFormat.format(12.123546); 11 //1212.35% 12 System.out.println(format1); 13 //每三位加入,分隔符 同時不保留位數(四舍五入) 14 decimalFormat=new DecimalFormat(",###"); 15 String format2 = decimalFormat.format(1235467890.56); 16 //1,235,467,891 17 System.out.println(format2); 18 //每三位加入,分隔符 同時保留3位小數(四舍五入) 19 decimalFormat=new DecimalFormat(",###.###"); 20 String format3 = decimalFormat.format(123456.123456); 21 //123,456.123 22 System.out.println(format3); 23 }
日期格式化
1 LocalDateTime now = LocalDateTime.now(); 2 DateTimeFormatter pattern = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); 3 //LocalDateTime--->字符串 4 String format = pattern.format(now); 5 System.out.println("LocalDateTime轉成字符串:\t" + format); 6 LocalDateTime parse = LocalDateTime.parse(format, pattern); 7 System.out.println("字符串轉成LocalDateTime:\t" + parse); 8 9 /*Calendar和String的互相轉換*/ 10 Calendar calendar = Calendar.getInstance(); 11 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 12 //Calendar--->Date--->String 13 Date date = calendar.getTime(); 14 System.out.println(sdf.format(date));//2020-07-10 19:17:42 15 //String--->Date--->Calendar 16 String str="2020-07-10 19:17:42"; 17 Date date1 = sdf.parse(str); 18 calendar.setTime(date1); 19 System.out.println(calendar);
日期格式之間的轉換
1 private static void f8() { 2 //LocalDateTime類 3 LocalDateTime now = LocalDateTime.now(); 4 System.out.println(now);//2020-07-10T16:49:57.962 5 6 /*LocalDateTime可以直接轉換成LocalDate,LocalTime*/ 7 LocalDate localDate = now.toLocalDate(); 8 LocalTime localTime = now.toLocalTime(); 9 10 System.out.println(localDate);//2020-07-10 11 System.out.println(localTime);//16:52:54.369 12 13 //Calendar類 14 Calendar calendar = Calendar.getInstance(); 15 calendar.set(2020,1,1,12,0,0); 16 17 /*Calendar轉成Date*/ 18 Date date = calendar.getTime(); 19 System.out.println(date);//Sat Feb 01 12:00:00 CST 2020 20 21 /*Date轉成Calendar*/ 22 Calendar calendar1 = Calendar.getInstance(); 23 calendar1.setTime(date); 24 System.out.println(calendar1);
.. 43 //Date--->Instant 44 Instant instant = Instant.ofEpochMilli(date.getTime()); 45 System.out.println(instant);//2020-07-10T11:32:27.831Z 46 //String--->Instant 47 Instant parse1 = Instant.parse("2020-07-10T11:32:27.831Z"); 48 System.out.println(parse1);//2020-07-10T11:32:27.831Z
個人覺得比較有用的:
-
Calendar轉成Date
-
Date date = calendar.getTime();
-
-
Date轉成Calendar
-
Calendar calendar1 = Calendar.getInstance();
-
calendar1.setTime(date);
-
- 終極大殺器:日期類先轉成String,再由String轉成其他日期類
- 舉個例子:LocalDateTime不好直接轉成Calendar,可以通過String,Date進行中轉
1 LocalDateTime localDateTime = LocalDateTime.of(2020, 7, 11, 12, 0); 2 //LocalDateTime--->String 3 String string = localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); 4 //String--->Date 5 Calendar calendar = Calendar.getInstance(); 6 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 7 Date parse = sdf.parse(string); 8 //Date--->Calendar 9 //即:LocalDateTime--->String,String--->Date,Date--->Calendar 10 calendar.setTime(parse);
- 舉個例子:LocalDateTime不好直接轉成Calendar,可以通過String,Date進行中轉