java企业级开发规范,企业级java开发中java程序员要知道的编程规范

本文将总结我2021年1月,第一次实习过程中,在项目开发遇到的编程规范问题或者平时未有注意的规范问题,以及list出一些编程技巧等等,不定期更新,觉得有用建议收藏,欢迎品论区补充,我将一起整理到文章中,共勉!

1. 把字符串常量放在前面

“string_constant”.equals(str),避免str出现空指针异常,不过企业中项目都会有工具类可以直接调用,也有引入的第三方包,常见如hutool工具包等等。

2.比较两个BigDecimal对象时,compareTo方法只比较值是否相等,返回值是int类型;equals方法对值与精度都进行比较,都相等返回true,否则返回false。

3.涉及金额等精确浮点计算的数据类型必须用BigDecimal,float、double类型会丢失精度禁止使用。

4.不能使用过时的类或方法。接口过时必须加@Deprecated注解,并清晰地说明采用的新接口或者新服务是什么。

5.所有的相同类型的包装类对象之间值的比较,必须使用equals方法比较。基本类型与其包装类对象比较,要么把包装类转为基本类型使用==比较,要么把基本类型转为包装类型对象后使用equals方法比较。

6.Object的equals方法容易抛空指针异常,应使用常量或确定有值的对象来调用equals,建议使用以下方法:Objects.equals(a, b) 或者 ObjectUtil.equal(a, b)、ObjectUtil.notEqual(a, b);

7.集合初始化时,指定集合初始值大小。 说明:HashMap使用如下构造方法进行初始化,如果暂时无法确定集合大小,那么指定默认值(16)即可。

1)、List评估大小:Listlist = new ArrayList<>(2);

2)、Map评估大小:MapparamMap = MapUtil.newHashMap(2);

3)、避免字符串拼,使用StringBuider并评估大小,或者使用StrUtil.concat 或者 StringUtils.concat:

StringBuilder builder = new StringBuilder(30);

String log = StrUtil.concat(true, “a”, “b”, “c”);

8.使用DTO,避免使用Map或者JSONObject传递参数(包括方法的参数传递);

9.获取当前毫秒数:System.currentTimeMillis(); 而不是new Date().getTime();

10.避免用Apache Beanutils进行属性的copy。Apache BeanUtils性能较差,可以使用其他方案比如Spring的BeanUtils,Hutool的BeanUtil。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值