最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

分享幾個(gè)寫簡潔java代碼的小技巧

 更新時(shí)間:2022年02月23日 10:03:56   作者:carryxu123456  
成為一個(gè)優(yōu)秀的Java程序員,有著良好的代碼編寫習(xí)慣是必不可少的,下面這篇文章主要給大家介紹了關(guān)于寫java代碼的小技巧,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

1. 定義配置文件信息

有時(shí)候我們?yōu)榱私y(tǒng)一管理會把一些變量放到 yml 配置文件中

例如

用 @ConfigurationProperties 代替 @Value

使用方法

定義對應(yīng)字段的實(shí)體

@Data
// 指定前綴
@ConfigurationProperties(prefix = "developer")
@Component
public class DeveloperProperty {
    private String name;
    private String website;
    private String qq;
    private String phoneNumber;
}

使用時(shí)注入這個(gè)bean

@RestController
@RequiredArgsConstructor
public class PropertyController {
 
    final DeveloperProperty developerProperty;
 
    @GetMapping("/property")
    public Object index() {
       return developerProperty.getName();
    }
}

2. 用@RequiredArgsConstructor代替@Autowired

我們都知道注入一個(gè) bean 有三種方式哦(set 注入, 構(gòu)造器注入, 注解注入),Spring 推薦我們使用構(gòu)造器的方式注入 Bean

我們來看看上段代碼編譯完之后的樣子

RequiredArgsConstructor:lombok提供

3. 不要返回 null

反例

正例

別處調(diào)用方法時(shí),避免不必要的空指針

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());
    }

4. if else

不要太多了if else if,可以試試策略模式代替

5. 減少controller業(yè)務(wù)代碼

業(yè)務(wù)代碼盡量放到service層進(jìn)行處理,后期維護(hù)起來也好操作而且美觀

反例

正例

6.將字符串?dāng)?shù)組轉(zhuǎn)換成逗號分隔字符串

通常會這么寫:

public static void main(String[] args) {
    String strs = "";
    String[] arr = new String[]{"aa", "cc", "bb"}; // 轉(zhuǎn)換前的字符串?dāng)?shù)組
    StringBuilder sb = new StringBuilder();
    for (String ele : arr) {
      if (sb.length() > 0) {
        sb.append(",");
      }
      sb.append(ele);
    }
    strs = sb.toString(); // 轉(zhuǎn)換后的逗號分隔字符串
    System.out.println(strs);
}

更簡單的寫法:

public static void main(String[] args) {
    String[] arr = new String[]{"aa", "cc", "bb"}; // 轉(zhuǎn)換前的字符串?dāng)?shù)組
    String strs = String.join(",", arr); // 轉(zhuǎn)換后的逗號分隔字符串
    System.out.println(strs);
}

總結(jié)

到此這篇關(guān)于寫簡潔java代碼小技巧的文章就介紹到這了,更多相關(guān)寫java代碼的小技巧內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

苏尼特右旗| 莱芜市| 蒙阴县| 苍山县| 佛山市| 东方市| 桑日县| 隆安县| 沙坪坝区| 黄冈市| 汤原县| 万山特区| 临高县| 北安市| 县级市| 乌兰浩特市| 伊吾县| 新兴县| 马公市| 额济纳旗| 博罗县| 姚安县| 大港区| 甘南县| 旌德县| 文安县| 宝鸡市| 秦安县| 喀喇沁旗| 迁安市| 盐池县| 岗巴县| 南部县| 新宁县| 岱山县| 普兰店市| 临沭县| 额敏县| 渭源县| 洪江市| 桃园市|