日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

这些工具类用起来真的很”香“

發布時間:2025/3/16 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 这些工具类用起来真的很”香“ 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

juejin.im/post/6883876475594866695

剛入行的java開發程序員可能很多情況下對于一些代碼的實現都是自己手動去實現的,不是說這樣不好,在一定的程度上這種做法其實是浪費時間的,而且很可能出現一些錯誤,不過這也是正常的,我剛入行的時候寫的代碼也是這樣,但是學會使用現成的工具類之后,可能會給你節省大量時間。

下面我主要分享一下這幾種工具類:

一、字符串相關

String 類應該是我們在平常的java開發過程中用的最多的一個類,平常我們經常需要圍繞String做一些處理,JDK自身也給我們提供了很多String API,但是功能都比較基礎。通常需要結合String 多個方法才能完成一個業務功能。

首先介紹的是Apache提供的StringUtils工具類

需要引入的pom依賴:

<dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.10</version> </dependency>

?

說明:commons-lang3是一直在維護的新版本,建議使用這個,而不是commons-lang

1、判斷字符串是否為空

String str = "hello world";if (null == str || str.isEmpty()) { }

上面的寫法想必大家應該都寫過,這段代碼雖然簡單,但是一不小心很容易造成空指針異常

使用StringUtils寫法如下:

if(StringUtils.isEmpty(str)){ } 上面的代碼判斷為字符串為空是不是更簡單呢,不過需要注意的是下面這種情況 public class UtilsTest { public static void main(String[] args) { String str1 = ""; String str2 = " "; System.out.println(StringUtils.isEmpty(str1)); System.out.println(StringUtils.isEmpty(str2)); }} 2、字符串固定長度 String result = StringUtils.leftPad("test",8,"0"); 上面leftPad方法表示返回字符串固定長度8,如果不足,在左邊補0

3、關鍵字替換

StringUtils.replace("abc","a","A"); StringUtils.replaceOnce("aba","a","A"); StringUtils.replacePattern("ABCabc123","[^A-Z0-9]+","");

4、字符串拼接

String[] array = new String[]{"abc","123","456"};StringBuilder stringBuilder = new StringBuilder();for(String s:array){stringBuilder.append(s).append(";");} System.out.println(stringBuilder.toString()); StringUtils類使用 String[] array = new String[]{"abc","123","456"}; StringUtils.join(array,";")

5、字符串拆分

StringUtils.split("a..b.c",",")

二、日期相關

DateUtils和DateFormatUtils

在JDK8之前,Java只提供了一個Date類,當我們需要將Date按照一定格式轉換成字符串的時候,這個時候需要使用到SimpleDateFormat類。

1、日期轉指定格式的字符串

public class UtilsTest { public static void main(String[] args) { Date date = new Date(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateString=simpleDateFormat.format(date); System.out.println(dateString); }}

看起來好像也很簡單,但是這里面用到的SimpleDateFormat不是線程安全的,這就導致在多線程環境下可能出現線程安全的問題,因此,我們可以使用common-lang3下的時間工具類DataUtils/DateFormateUtils,從而解決Date與字符串的轉換問題。

方法很簡單,上面代碼的轉換等價于如下代碼:

String dateString = DateFormatUtils.format(new Date(),"yyyy-MM-dd HH:mm:ss");System.out.println(dateString); 2、字符串轉日期 Date date = DateUtils.parseDate("2020-10-15 22:00:00","yyyy-MM-dd HH:mm:ss");System.out.println(date); 輸出結果: Thu Oct 15 22:00:00 CST 2020

3、DateUtils時間計算

除開上面的日期轉換之外,DateUtils還提供了很方便的時間計算的功能函數

直接貼代碼:

輸出結果:

三、集合數組相關

1、判斷是否為空

以前這樣判斷

List<String> list = new ArrayList<String>();if(null==list||list.isEmpty()){ }

上面寫起來其實也不難,但是也比較容易拋出空指針異常,現在我們可以通過使用commons-collections類來幫我們判斷是否為空

pom依賴:

<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.4</version></dependency> 使用CollectionUtils/MapUtils/ArrayUtils進行判空判斷 List<String> list = new ArrayList<String>();Map map = new HashMap();String[] strings = new String[];map.put("name", "zxb");if (CollectionUtils.isEmpty(list)) { } if (MapUtils.isEmpty(map)){ }if(ArrayUtils.isEmpty(strings)){ } 其中要注意的是ArrayUtils是commons-lang3包下的

2、將數組快速加入到list中

直接上代碼:

輸出:


其他的方法這里不做過多補充,可以自己使用idea玩玩其他方法,其實Google的Guava工具類也有很多對于集合的操作增強類,自己可以去搜下對應的相關資料

四、計時相關

以前計時:

long start = System.currentTimeMillis();long end = System.currentTimeMillis();System.out.println("運行時間:"+(end-start)+"ms");

上面想必大家都用過,確實很簡單,但是這種計時是非常不靈活的,默認情況下我們只能取ms為單位,如果需要分鐘呢?那就需要另外計算來轉換,我這里給大家介紹Guava stopwatch計時工具類來統計程序執行時間

pom依賴:

<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>19.0</version></dependency>

使用Stopwatch工具類統計程序執行時間:

輸出結果:


有道無術,術可成;有術無道,止于術

歡迎大家關注Java之道公眾號

好文章,我在看??

總結

以上是生活随笔為你收集整理的这些工具类用起来真的很”香“的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 秘密爱大尺度做爰呻吟 | 国产精品搬运 | 久久亚洲激情 | 国产精品扒开腿做爽爽爽视频 | 亚洲激情电影在线 | sese亚洲| 欧美1区2区| xxx国产精品 | 日韩精品一区二区三区 | 国产一级视频免费观看 | 国产欧美精品一区二区在线播放 | 亚洲巨乳 | 中文字幕一区二区人妻在线不卡 | 黄色片视频网站 | 一区二区三区网 | 日韩欧美视频二区 | 国产这里有精品 | 亚洲毛片在线观看 | 操极品少妇| jizz中国少妇 | 成人免费午夜视频 | 91亚洲精华 | 天天艹日日艹 | 超碰蜜桃 | 粉嫩av网 | 久色视频在线观看 | 日本免费黄网站 | 国产av国片偷人妻麻豆 | 色窝| 天堂av亚洲av国产av电影 | 北条麻妃青青久久 | av在线观 | 99综合 | 久久色在线 | 色欲久久久天天天精品综合网 | 亚洲影院一区 | 欧美成人免费观看 | 欧美精品在线视频 | 亚洲一区免费在线 | 337p日本欧洲亚洲大胆张筱雨 | 色哟哟在线视频 | 中文文字幕文字幕高清 | 超碰人人草人人干 | 男插女av| 国产又粗又猛又黄 | 久久久久一区二区精码av少妇 | 一区二区精品在线观看 | 亚洲四虎影院 | 中国a毛片 | 日韩网站在线播放 | 中文字字幕| 亚洲欧洲av在线 | 99精品欧美 | 国产精品99999| 自拍99 | 羞羞成人 | 成 人片 黄 色 大 片 | 国产乱码视频 | 国产一级一区二区 | 亚洲一区免费看 | 国产视频69 | 久久久久久中文字幕 | 狠狠干成人 | 久久国产精品99久久人人澡 | 可以直接在线观看的av | 久久精品视频一区二区三区 | 国产尤物在线视频 | 亚洲欧美日韩电影 | 97福利视频 | 国产蜜臀av一区二区 | 波多野结衣在线观看一区二区三区 | 911亚洲精品| 午夜精品在线播放 | 日本十八禁视频无遮挡 | 日韩高清在线一区二区 | 亚洲视频日韩 | 欧美日韩字幕 | 性欧美最猛 | 黄色片中文字幕 | 91美女福利视频 | 亚洲黄色小视频 | 国产精品自拍亚洲 | 国产精品乱轮 | 欧美日韩国产91 | 特黄一区二区三区 | 大伊人久久 | 亚洲1区| 人人人干| 色网站观看 | 春草| 日韩高清黄色 | 欧美xxxxx性| 日本一区二区视频在线 | 亚洲AV成人无码精品久久盆瓶 | 成人免费黄色小视频 | 中文字幕自拍 | 爽爽影院在线免费观看 | 欧美色涩| 91传媒视频在线观看 |