1. 程式人生 > >【工作效率】Java API使用以及擴充套件

【工作效率】Java API使用以及擴充套件

        前幾天在EJB學習的時候,遇到了一段不理解的程式碼:

public BigDecimal dollarToYen(BigDecimal dollars) {
	BigDecimal result = dollars.multiply(yenRate);
	return result.setScale(2, BigDecimal.ROUND_UP);
}
         如上,對於Decimal型別的dollars,有一個multiply方法,小編並不是很清楚這個方法的作用,怎麼辦?

         查API啊!

         之前遇到這樣的問題,就會像“大海撈針 ”地去網上逛各種部落格,最近和Bill身上確實學到了好多好習慣,就比如獲取第一手的資料然後研究學習,就是其中之一。

         (1)手動去API文件中查

   
        這是Java 官網上對所有API文件的一個集合,根據你的java語言版本,選擇對應的api文件,進行下載,建議在這裡下載英文最新版本的API文件,用第一手的文件去參考,效率非常之高。

       之後去搜索就好!

      (2)將API文件繫結到IDE中

        這裡我搜到了一個辦法,就不重複造輪子了,放連結:

        最終達到的效果如圖:

          

         醬紫,就可以在程式設計的時候,遇到匯入的專案,如果有不懂的方法,滑鼠游標落到一個程式碼上,就可以便捷檢視它的說明了。

        --------------------華麗的分割線---------------------

        之後給網友安利一個網站:

        介面如圖:

            

          這是個神奇的網站,當你輸一個不會用的技術點時,比如“jdbc”:    

        如上,會有各種框架中對於JDBC的使用的"Demo",沒錯,你沒有聽錯,是demo!!!

        比如:

    

       這就是這個網站的神奇之處,對於不會用的方法,通過查詢demo的使用,就能夠得心應手的使用這個技術點或者方法,同時請注意:

       在上面Example下面有一段話:“Project:EECE496 File:jdbcNonceVerifier.java

”,這是這個demo的出處,點選“View source code”,你就能夠找到如上使用jdbc這段開原始碼的原出處,並且結合其他程式碼,做整體的學習。是不是非常方面!!!

        此外更好的一點就是,不止可以搜尋JDK自帶的類,還可以搜尋更多第三方流行的類的用法,比如我想搜尋AsyncHBase的一個主要的類的用法,我可以輸入org.hbase.async.HBaseClient,你可以看到一堆例子,就是一個程式碼片段,每個片段都會標明是從哪個專案中摘錄的,並且會標明具體的路徑和原始檔,這個網站應該是有一個爬蟲系統來進行蒐集和整理的吧。

      (3)對API中最為常用的幾個函式編個小故事

        就像在部落格開頭的那段程式碼:

public BigDecimal dollarToYen(BigDecimal dollars) {
	BigDecimal result = dollars.multiply(yenRate);
	return result.setScale(2, BigDecimal.ROUND_UP);
}
        當我查詢後得知了"ROUND_UP"以及"ROUND_DOWN"的含義之後,含義如下:

        ROUND_DOWN,是一個舍位取值的概念,我保留了兩位小數,我不管你後面的小數值如何,也不會四捨五入,就硬生生的給階段,相當於什麼呢,就是我從小數點後面開始取兩位,兩位後面的都不要了,相當於一個擷取字串的操作。
        而ROUND_UP那,很寬容,很大方,我不管你第三位的小數是多少,我都給你加一最小單位(比如保留兩位小數,最小單位是0.01,保留三位小數,最小單位就是0.001),當然了,你保留到最後一位的數字如果是0的話,那麼就不加了。

        這明明就是生活中兩個活生生的例子啊!!!

        (1)一個籃子可以裝10個蘋果,現在有82個蘋果,需要幾個籃子來裝?
9個,對,這是咱們的什麼結果,不正是ROUND_UP的麼(只不過這道題是取小數點後0位,也就是取整的區別而已),也就很好解釋為什麼最小單位是0不需要再加一個最小單位了,如果我只有80個蘋果,8個籃子正好裝下,就不需要第九個了。

       (2)每個加油站相距8公里,一公里需要耗一個油,我現在車裡還有90個油,請問,我最晚在第幾個加油站必須得加油了?
11個,第十一個,就是在車使用88個油到達第11個加油站後需要加油,因為我還剩2個由已經撐不到第12個加油站了。這種情況,ROUND_DOWN就派上用場了。
        把API中之前不熟悉的類、方法,多去想一步,迴歸到生活,就很好理解啦!!! 

        對於Java學習過程中API的使用小技巧,就總結到這裡。

        That's all.

        Addition:最後推薦一個腦洞大開的視訊節目:“瞎看什麼”,想知道他演的是啥,搜搜啊!!!