摘要:在中,工具類定義了一組公共方法,這篇文章將介紹中使用最頻繁及最通用的工具類。另外,工具類,根據(jù)阿里開發(fā)手冊(cè),包名如果要使用不能帶,工具類命名為
在Java中,工具類定義了一組公共方法,這篇文章將介紹Java中使用最頻繁及最通用的Java工具類。以下工具類、方法按使用流行度排名,參考數(shù)據(jù)來源于Github上隨機(jī)選取的5萬個(gè)開源項(xiàng)目源碼。
一. org.apache.commons.io.IOUtilscloseQuietly:關(guān)閉一個(gè)IO流、socket、或者selector且不拋出異常,通常放在finally塊 toString:轉(zhuǎn)換IO流、 Uri、 byte[]為String copy:IO流數(shù)據(jù)復(fù)制,從輸入流寫到輸出流中,最大支持2GB toByteArray:從輸入流、URI獲取byte[] write:把字節(jié). 字符等寫入輸出流 toInputStream:把字符轉(zhuǎn)換為輸入流 readLines:從輸入流中讀取多行數(shù)據(jù),返回List二. org.apache.commons.io.FileUtilscopyLarge:同copy,支持2GB以上數(shù)據(jù)的復(fù)制 lineIterator:從輸入流返回一個(gè)迭代器,根據(jù)參數(shù)要求讀取的數(shù)據(jù)量,全部讀取,如果數(shù)據(jù)不夠,則失敗
deleteDirectory:刪除文件夾 readFileToString:以字符形式讀取文件內(nèi)容 deleteQueitly:刪除文件或文件夾且不會(huì)拋出異常 copyFile:復(fù)制文件 writeStringToFile:把字符寫到目標(biāo)文件,如果文件不存在,則創(chuàng)建 forceMkdir:強(qiáng)制創(chuàng)建文件夾,如果該文件夾父級(jí)目錄不存在,則創(chuàng)建父級(jí) write:把字符寫到指定文件中 listFiles:列舉某個(gè)目錄下的文件(根據(jù)過濾器) copyDirectory:復(fù)制文件夾 forceDelete:強(qiáng)制刪除文件三. org.apache.commons.lang.StringUtils
isBlank:字符串是否為空 (trim后判斷) isEmpty:字符串是否為空 (不trim并判斷) equals:字符串是否相等 join:合并數(shù)組為單一字符串,可傳分隔符 split:分割字符串 EMPTY:返回空字符串 trimToNull:trim后為空字符串則轉(zhuǎn)換為null replace:替換字符串四. org.apache.http.util.EntityUtils
toString:把Entity轉(zhuǎn)換為字符串 consume:確保Entity中的內(nèi)容全部被消費(fèi)。可以看到源碼里又一次消費(fèi)了Entity的內(nèi)容,假如用戶沒有消費(fèi),那調(diào)用Entity時(shí)候?qū)?huì)把它消費(fèi)掉 toByteArray:把Entity轉(zhuǎn)換為字節(jié)流 consumeQuietly:和consume一樣,但不拋異常 getContentCharset:獲取內(nèi)容的編碼五. org.apache.commons.lang3.StringUtils
isBlank:字符串是否為空 (trim后判斷) isEmpty:字符串是否為空 (不trim并判斷) equals:字符串是否相等 join:合并數(shù)組為單一字符串,可傳分隔符 split:分割字符串 EMPTY:返回空字符串 replace:替換字符串 capitalize:首字符大寫六. org.apache.commons.io.FilenameUtils
getExtension:返回文件后綴名 getBaseName:返回文件名,不包含后綴名 getName:返回文件全名 concat:按命令行風(fēng)格組合文件路徑(詳見方法注釋) removeExtension:刪除后綴名 normalize:使路徑正常化 wildcardMatch:匹配通配符 seperatorToUnix:路徑分隔符改成unix系統(tǒng)格式的,即/ getFullPath:獲取文件路徑,不包括文件名 isExtension:檢查文件后綴名是不是傳入?yún)?shù)(List七. org.springframework.util.StringUtils)中的一個(gè)
hasText:檢查字符串中是否包含文本 hasLength:檢測(cè)字符串是否長度大于0 isEmpty:檢測(cè)字符串是否為空(若傳入為對(duì)象,則判斷對(duì)象是否為null) commaDelimitedStringToArray:逗號(hào)分隔的String轉(zhuǎn)換為數(shù)組 collectionToDelimitedString:把集合轉(zhuǎn)為CSV格式字符串 replace 替換字符串 7. delimitedListToStringArray:相當(dāng)于split uncapitalize:首字母小寫 collectionToDelimitedCommaString:把集合轉(zhuǎn)為CSV格式字符串 tokenizeToStringArray:和split基本一樣,但能自動(dòng)去掉空白的單詞八. org.apache.commons.lang.ArrayUtils
contains:是否包含某字符串 addAll:添加整個(gè)數(shù)組 clone:克隆一個(gè)數(shù)組 isEmpty:是否空數(shù)組 add:向數(shù)組添加元素 subarray:截取數(shù)組 indexOf:查找某個(gè)元素的下標(biāo) isEquals:比較數(shù)組是否相等 toObject:基礎(chǔ)類型數(shù)據(jù)數(shù)組轉(zhuǎn)換為對(duì)應(yīng)的Object數(shù)組九. org.apache.commons.lang.StringEscapeUtils
參考十五:org.apache.commons.lang3.StringEscapeUtils十. org.apache.http.client.utils.URLEncodedUtils
format:格式化參數(shù),返回一個(gè)HTTP POST或者HTTP PUT可用application/x-www-form-urlencoded字符串 parse:把String或者URI等轉(zhuǎn)換為List十一. org.apache.commons.codec.digest.DigestUtils
md5Hex:MD5加密,返回32位字符串 sha1Hex:SHA-1加密 sha256Hex:SHA-256加密 sha512Hex:SHA-512加密 md5:MD5加密,返回16位字符串十二. org.apache.commons.collections.CollectionUtils
isEmpty:是否為空 select:根據(jù)條件篩選集合元素 transform:根據(jù)指定方法處理集合元素,類似List的map() filter:過濾元素,雷瑟List的filter() find:基本和select一樣 collect:和transform 差不多一樣,但是返回新數(shù)組 forAllDo:調(diào)用每個(gè)元素的指定方法 isEqualCollection:判斷兩個(gè)集合是否一致十三. org.apache.commons.lang3.ArrayUtils
contains:是否包含某個(gè)字符串 addAll:添加整個(gè)數(shù)組 clone:克隆一個(gè)數(shù)組 isEmpty:是否空數(shù)組 add:向數(shù)組添加元素 subarray:截取數(shù)組 indexOf:查找某個(gè)元素的下標(biāo) isEquals:比較數(shù)組是否相等 toObject:基礎(chǔ)類型數(shù)據(jù)數(shù)組轉(zhuǎn)換為對(duì)應(yīng)的Object數(shù)組十四. org.apache.commons.beanutils.PropertyUtils
getProperty:獲取對(duì)象屬性值 setProperty:設(shè)置對(duì)象屬性值 getPropertyDiscriptor:獲取屬性描述器 isReadable:檢查屬性是否可訪問 copyProperties:復(fù)制屬性值,從一個(gè)對(duì)象到另一個(gè)對(duì)象 getPropertyDiscriptors:獲取所有屬性描述器 isWriteable:檢查屬性是否可寫 getPropertyType:獲取對(duì)象屬性類型十五. org.apache.commons.lang3.StringEscapeUtils
unescapeHtml4:轉(zhuǎn)義html escapeHtml4:反轉(zhuǎn)義html escapeXml:轉(zhuǎn)義xml unescapeXml:反轉(zhuǎn)義xml escapeJava:轉(zhuǎn)義unicode編碼 escapeEcmaScript:轉(zhuǎn)義EcmaScript字符 unescapeJava:反轉(zhuǎn)義unicode編碼 escapeJson:轉(zhuǎn)義json字符 escapeXml10:轉(zhuǎn)義Xml10
這個(gè)現(xiàn)在已經(jīng)廢棄了,建議使用commons-text包里面的方法。
十六. org.apache.commons.beanutils.BeanUtilscopyPeoperties:復(fù)制屬性值,從一個(gè)對(duì)象到另一個(gè)對(duì)象 getProperty:獲取對(duì)象屬性值 setProperty:設(shè)置對(duì)象屬性值 populate:根據(jù)Map給屬性復(fù)制 copyPeoperty:復(fù)制單個(gè)值,從一個(gè)對(duì)象到另一個(gè)對(duì)象 cloneBean:克隆bean實(shí)例
現(xiàn)在你只要了解了以上16種最流行的工具類方法,你就不必要再自己寫工具類了,不必重復(fù)造輪子。大部分工具類方法通過其名字就能明白其用途,如果不清楚的,可以看下別人是怎么用的,或者去網(wǎng)上查詢其用法。
另外,工具類,根據(jù)阿里開發(fā)手冊(cè),包名如果要使用util不能帶s,工具類命名為 XxxUtils
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/75908.html
摘要:在中,工具類定義了一組公共方法,這篇文章將介紹中使用最頻繁及最通用的工具類。另外,工具類,根據(jù)阿里開發(fā)手冊(cè),包名如果要使用不能帶,工具類命名為。 showImg(https://segmentfault.com/img/remote/1460000015356958); 在Java中,工具類定義了一組公共方法,這篇文章將介紹Java中使用最頻繁及最通用的Java工具類。以下工具類、方法...
摘要:最佳的糟糕開源創(chuàng)意別笑我們是很嚴(yán)肅的創(chuàng)建一個(gè)新發(fā)行版,而不是創(chuàng)建一個(gè)新應(yīng)用要單干打印手槍將置于之前分支的創(chuàng)意最佳開源新項(xiàng)目樹莓派又拿下一個(gè)第一排名第二的也讓人期待。 接上篇 最佳在線協(xié)作工具 showImg(http://segmentfault.com/img/bVbNeb); 不管你喜不喜歡Google,你都很難否認(rèn)Google在文檔協(xié)作方面做得不錯(cuò)。多人同時(shí)編輯同一文件毫無...
以下是Java技術(shù)棧微信公眾號(hào)發(fā)布的關(guān)于 Java 的技術(shù)干貨,從以下幾個(gè)方面匯總。 Java 基礎(chǔ)篇 Java 集合篇 Java 多線程篇 Java JVM篇 Java 進(jìn)階篇 Java 新特性篇 Java 工具篇 Java 書籍篇 Java基礎(chǔ)篇 8張圖帶你輕松溫習(xí) Java 知識(shí) Java父類強(qiáng)制轉(zhuǎn)換子類原則 一張圖搞清楚 Java 異常機(jī)制 通用唯一標(biāo)識(shí)碼UUID的介紹及使用 字符串...
摘要:最受歡迎的個(gè)庫連續(xù)兩年,二度成為中最受歡迎的庫。此外,谷歌的開源項(xiàng)目來勢(shì)洶洶,勇奪第三名,該庫包含了一系列谷歌內(nèi)含的核心庫。在本次最受歡迎的個(gè)庫中,個(gè)庫與相關(guān)。 【編者按】本文作者為 Henn Idan,主要介紹基于 GitHub 中的數(shù)據(jù)分析,得出的2016年度最受歡迎的100個(gè) Java 庫。本文系國內(nèi) ITOM 管理平臺(tái) OneAPM 編譯呈現(xiàn)。 誰拔得頭籌?誰又落于人后?我們分...
閱讀 2424·2021-11-23 10:04
閱讀 1494·2021-09-02 15:21
閱讀 892·2019-08-30 15:44
閱讀 1061·2019-08-30 10:48
閱讀 707·2019-08-29 17:21
閱讀 3554·2019-08-29 13:13
閱讀 1983·2019-08-23 17:17
閱讀 1784·2019-08-23 17:04