第60條:如果需要精確的答案,請避免使用float和double float和double類型主要是為了科學(xué)計(jì)算和工程計(jì)算而設(shè)計(jì)的。他們執(zhí)行二進(jìn)...
第58條 for-each循環(huán)優(yōu)先于傳統(tǒng)的for循環(huán) for-each 相較于使用迭代器或者傳統(tǒng)for循環(huán)遍歷數(shù)組的方式,主要減少了變量(迭代器...
提示五十七:將局部變量的作用域最小化。 在局部變量首次使用的地方進(jìn)行聲明。過早聲明導(dǎo)致作用域過大,除可讀性查之外,被意外改動(dòng)的幾率也大。 幾乎每...
第56條:為所有導(dǎo)出的API元素寫文檔注釋。 為了正確的編寫API文檔,必須在每個(gè)被導(dǎo)出的類、接口、構(gòu)造器、方法和域聲明之前增加一個(gè)文檔注釋。 ...
第55條:謹(jǐn)慎返回optional。 集合、映射、Stream、數(shù)組、Optional都不應(yīng)該包裝在Optional中。 如果無法返回結(jié)果并且當(dāng)...
提示五十三:慎用可變參數(shù)。 如果可變參數(shù)要求至少要求一個(gè)參數(shù)的話,可以使用這種樣式。 在重視性能的情況下,因?yàn)榭勺儏?shù)方法的每次調(diào)用都會(huì)導(dǎo)致進(jìn)行...
提示五十二:慎用重載。 重載調(diào)用哪個(gè)方法是在編譯時(shí)做出的決定,重寫方法是在運(yùn)行時(shí)決定調(diào)用哪個(gè)方法,所以編譯時(shí)的類型不會(huì)影響最終調(diào)用哪個(gè)方法。 使...
提示五十一:謹(jǐn)慎設(shè)計(jì)方法簽名。 謹(jǐn)慎選擇方法名。 不要過于追求提供便利的方法。 避免過長的參數(shù)列表。有三種方法可以縮短參數(shù)列表。分解方法。創(chuàng)建輔...
提示五十:必要時(shí)進(jìn)行保護(hù)性拷貝。 愉快使用 Java 的原因,它是一種安全的語言。 這意味著在缺少本地方法的情況下,它不受緩沖區(qū)溢出,數(shù)組溢出,...