原创 網站過期說明

        3年前因爲域名和主機便宜,買了3年的,現在續費太貴已經不再使用了,域名:xkzhangsan.com.  

原创 Java實用小工具系列2---使用StopWatch統計多個任務耗時分佈

  在Java中經常需要統計程序的使用時間,如果只是一個時間段統計比較好處理,可以直接使用System.currentTimeMillis()。但如果一個程序中包含多個步驟,需要統計每個步驟耗時,並且需要統計耗時分佈,找出那個步驟耗時最多,

原创 Java實用小工具系列1---使用StringUtils分割字符串

經常有這種情況,需要將逗號分割的字符串,比如:aaa, bbb ,ccc,但往往是人工輸入的,難免會有多空格逗號情況,比如:aaa, bbb , ccc, ,,這種情況使用split會解析出不正常的結果。 1.使用split分割 Stri

原创 Java日期時間API系列23-----Jdk8中java.time包中的新的日期時間API類,獲取準確開始時間00:00:00,獲取準確結束時間23:59:59等

  有時候,往往需要統計某個時間區間的銷量等問題,這就需要準確的起始時間,獲取準確開始時間00:00:00,獲取準確結束時間23:59:59。下面增加了一一些方法,獲取當天起始時間,昨天起始時間,當前月第一天開始時間,當前月最後一天結束時間

原创 Java日期時間API系列42-----一種高效的中文日期格式化和解析方法

  中文日期(2021年09月11日 和 二〇二一年九月十一日 )在生活中經常用到,2021年09月11日很好處理直接使用模板:yyyy年MM月dd日;二〇二一年九月十一日比較不好處理,需要每個數字進行轉換判斷,下面使用數組和HashMap

原创 Java日期時間API系列41-----根據毫秒值計算倒計時

  會有一個比較常見的需求,計算倒計時,比如,計算距離某時間剩餘時間(27小時10分鐘30秒、1天3小時10分鐘30秒)或者已經進行了多長時間等。下面是2種實現代碼:其中第一種超過1天會體現在小時上,比如27小時10分鐘30秒。  

原创 Java日期時間API系列40-----中文語句中的時間語義識別(time NLP)代碼實現分析

  從上篇 Java日期時間API系列39-----中文語句中的時間語義識別(time NLP 輸入一句話,能識別出話裏的時間)原理分析 中得知解析的主要步驟分爲三步: (1)加載正則文件 (2)解析中文語句中的所有時間詞語 (3)根據基準

原创 Java日期時間API系列39-----中文語句中的時間語義識別(time NLP 輸入一句話,能識別出話裏的時間)原理分析

     NLP (Natural Language Processing) 是人工智能(AI)的一個子領域。自然語言是人類智慧的結晶,自然語言處理是人工智能中最爲困難的問題之一(來自百度百科)。 其中中文更是不好處理。下面將分析中文語句中

原创 Java日期時間API系列38-----一種高效的工作日計算方法

     如果沒有節日放假調休的話,工作日很好計算,週一到週五就是工作日,但因爲有節日放假調休,使得這個計算需要外部放假安排數據來支持。計算原理: 先按照放假安排數據計算,再按照週一週五計算。 下面以LocalDateTime 爲例。  

原创 Java日期時間API系列37-----時間段是否有重疊(交集)的計算方法

     在日程安排或預約排期等場景中,經常會需要對比2個或多個時間段是重疊的功能,我經過整理和驗證,發現了下面的算法比較好一些,分享一下。   1.只有2個時間段的情況     例如:存在區間A、區間B,重疊的情況很多,但不重疊的情況只有

原创 Java日期時間API系列36-----Jdk8中java.time包中的新的日期時間API類應用,使用LocalTime計算十二時辰。

  十二時辰,古代勞動人民把一晝夜劃分成十二個時段,每一個時段叫一個時辰。二十四小時和十二時辰對照表:     時辰時間24時制 子時 深夜 11:00 - 凌晨 01:00 23:00 - 01 :00 丑時 上午 01:00

原创 Java日期時間API系列35-----Jdk8中java.time包中的新的日期時間API類應用,微秒和納秒等更精確的時間格式化和解析。

  通過Java日期時間API系列1-----Jdk7及以前的日期時間類中得知,Java8以前除了java.sql.Timestamp擴充納秒,其他類只精確到毫秒;Java8 time包所有相關類都支持納秒, 所有時間類秒後,只有納秒字段,

原创 Java日期時間API系列34-----Jdk8中java.time包中的新的日期時間API類應用,使用Period一行代碼計算生日。

  通過Java日期時間API系列9-----Jdk8中java.time包中的新的日期時間API類的Period和Duration的區別中得知,Period可以比較2個日期相差的年月日。年齡計算是2個日期相差的年的值,具體還要根據月日微調

原创 Java日期時間API系列33-----Jdk8中java.time包中的新的日期時間API類應用,格式化常用模板大全,新增Excel常用格式。

  從Java日期時間API系列10-----Jdk8中java.time包中的新的日期時間API類的DateTimeFormatter中可以知道常用字符有超過20幾種,各種組合結果非常多。但常用的組合就幾十種,現在在 xk-time的原有

原创 Java日期時間API系列32-----Jdk8中java.time包中的新的日期時間API類應用,時間工具包 xk-time 1.0.0 版本完成。

  從Java日期時間API系列第一篇博客開始,利用業餘時間對Java日期時間API源碼進行了系統的、多次的閱讀實踐,包括Date、LocalDate、LocalDateTime、LocalTime、Instant、ZonedDateTim