Java-【大數處理】和【日期類】
【大數類】
BigInteger(整數) 和 BigDecimal(小數) 都是Java針對大數提供的類
常用方法:
(1)加:add
(2)減:subtract
(3)乘:multiply
(4)除:divide
圖片來源:java大數運算(講解)
當使用 BigDecimal 的divide方法時,如果除不盡,會丟擲異常,這時可以使用如圖方法,作用是保留與呼叫方法的大數一樣的小數精度
教程教的已棄用了。
【日期類】
第一代日期類:Date
在Java中,日期時間用java.util.Date來表示,呼叫預設構造器Data(),將會建立一個當前系統時間的Date物件,時間精確到毫秒
它允許進行格式化(日期->文字)、解析(文字->日期)和規範化
常用方法:
(1)Date():分配 Date 物件並初始化此物件,以表示分配它的時間(精確到毫秒)。它的預設輸出格式是:Wed Sep 29 19:55:10 CST 2021
,CST是時區縮寫,我們是中國時區China's Time zone 或 中國標準時間China Standard Time
(2)Date(long date):分配 Date 物件並初始化此物件,以表示自從標準基準時間(稱為“曆元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以來的指定毫秒數。
(2)SimpleDateFormat:格式和解析日期的類。
SimpleDateFormat類的使用:
第二代日期類:Calendar類
-
Calendar類是一個抽象類
-
Calendar類的構造器是私有的,可以通過getInstance()來獲取例項。
-
提供大量的方法和欄位提供給程式設計師
-
Calendar類沒有提供相應的格式化的類,因此需要程式設計師自己組合輸出。
-
24小時進位制的小時欄位是:Calendar.HOUR_OF_DAY; 它的月份欄位是從0開始的,而不是1月
第三代日期類:LocalDate(日期/年月日),LocalTime(時間/時分秒),LocalDateTime(日期時間) JDK8加入
DateTimeFormatter格式日期類:類似於SimpleDateFormat
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("YYYY-MM-dd HH:mm:SS");
String format = dateTimeFormatter.format(ldt); //ldt為LocalDateTime物件
System.out.println(format);