写简洁java代码的技巧有哪些
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,小编给大家分享一下写简洁java代码的技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1. 定义配置文件信息有时候
千家信息网最后更新 2025年01月31日写简洁java代码的技巧有哪些
小编给大家分享一下写简洁java代码的技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
1. 定义配置文件信息
有时候我们为了统一管理会把一些变量放到 yml 配置文件中
例如
用 @ConfigurationProperties 代替 @Value
使用方法
定义对应字段的实体
@Data// 指定前缀@ConfigurationProperties(prefix = "developer")@Componentpublic class DeveloperProperty { private String name; private String website; private String qq; private String phoneNumber;}
使用时注入这个bean
@RestController@RequiredArgsConstructorpublic class PropertyController { final DeveloperProperty developerProperty; @GetMapping("/property") public Object index() { return developerProperty.getName(); }}
2. 用@RequiredArgsConstructor代替@Autowired
我们都知道注入一个 bean 有三种方式哦(set 注入, 构造器注入, 注解注入),Spring 推荐我们使用构造器的方式注入 Bean
我们来看看上段代码编译完之后的样子
RequiredArgsConstructor:lombok提供
3. 不要返回 null
反例
正例
别处调用方法时,避免不必要的空指针
optional 判空
//获取子目录列表public ListgetChild(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业务代码
业务代码尽量放到service层进行处理,后期维护起来也好操作而且美观
反例
正例
6.将字符串数组转换成逗号分隔字符串
通常会这么写:
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代码的技巧有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
字符
代码
字符串
数组
篇文章
逗号
简洁
技巧
业务
内容
文件
方式
方法
构造器
配置
美观
不怎么
使用方法
信息
写法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
法宣在线网络安全
专科商务软件开发与应用
信息与通信网络技术丛书
女神联盟服务器的时间
残疾人网络技术
安卓桌面软件开发
网络安全班会的最后总结
做软件开发需要学什么专业
关于网络安全我的感想
mysql数据库可视化编程
黄浦区专业软件开发销售电话
服务器分端口到底是分什么
数据库培训多少时间
kpl比赛服务器是几tick
网络安全设计方案先进性与成熟性
软件开发的营销队伍
济源中等计算机网络技术教程
学习软件开发的培训学校
北京餐饮软件开发常用解决方案
嘉定区电子网络技术供应
如何选择一个软件开发商
四川成都麻将软件开发平台
苹果软件开发云官网
在数据库创建kc表
顺义浪潮服务器售后
29岁软件开发4年
pg数据库清理缓存
服务器主板启动但是不亮
服务器系统怎么取消待机
go语言数据库