您好,登錄后才能下訂單哦!
小編給大家分享一下寫簡潔java代碼的技巧有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
有時候我們為了統一管理會把一些變量放到 yml 配置文件中
例如
用 @ConfigurationProperties 代替 @Value
使用方法
定義對應字段的實體
@Data // 指定前綴 @ConfigurationProperties(prefix = "developer") @Component public class DeveloperProperty { private String name; private String website; private String qq; private String phoneNumber; }
使用時注入這個bean
@RestController @RequiredArgsConstructor public class PropertyController { final DeveloperProperty developerProperty; @GetMapping("/property") public Object index() { return developerProperty.getName(); } }
我們都知道注入一個 bean 有三種方式哦(set 注入, 構造器注入, 注解注入),Spring 推薦我們使用構造器的方式注入 Bean
我們來看看上段代碼編譯完之后的樣子
RequiredArgsConstructor:lombok提供
反例
正例
別處調用方法時,避免不必要的空指針
optional 判空
//獲取子目錄列表 public List<CatalogueTreeNode> getChild(String pid) { if (V.isEmpty(pid)) { pid = BasicDic.TEMPORARY_DIRECTORY_ROOT; } CatalogueTreeNode node = treeNodeMap.get(pid); return Optional.ofNullable(node) .map(CatalogueTreeNode::getChild) .orElse(Collections.emptyList()); }
不要太多了if else if,可以試試策略模式代替
業務代碼盡量放到service層進行處理,后期維護起來也好操作而且美觀
反例
正例
通常會這么寫:
public static void main(String[] args) { String strs = ""; String[] arr = new String[]{"aa", "cc", "bb"}; // 轉換前的字符串數組 StringBuilder sb = new StringBuilder(); for (String ele : arr) { if (sb.length() > 0) { sb.append(","); } sb.append(ele); } strs = sb.toString(); // 轉換后的逗號分隔字符串 System.out.println(strs); }
更簡單的寫法:
public static void main(String[] args) { String[] arr = new String[]{"aa", "cc", "bb"}; // 轉換前的字符串數組 String strs = String.join(",", arr); // 轉換后的逗號分隔字符串 System.out.println(strs); }
以上是“寫簡潔java代碼的技巧有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。