java代码开发细节(根据Sonar提示的问题总结归纳)

1 List<A> list = new ArrayList<为空,不用写A>;

2 try catch 中 catch的exception需记录Exception信息,eg:Logger.error(e.getMessage(),e);

3 return x; return x+3; return (x+3)/2;   不用写成 return (x); return (x+3); return ((x+3)/2);

4 if for while switch 等嵌套循环,复杂度不能超过10,否则代码不易读;

5 判断List 是否为空的写法: list!=null &&list.size()>0 标注红色部分应改为 list.isEmpty();

6 注释的代码尽量删掉,整洁;

7 单线程的方法中用StringBuilder > StringBuffer 

StringBuilder单线程中的性能比StringBuffer高;

8 不复用变量或对象 eg:

String str1 = "abc";

String str2 = "efg";

str1 = str1 + str2;

这里需创建新的变量String str3 = str1 +str2;

9 返回空时,需写成 return Collection.emptyXXX; 而不是return null;

10 空的方法包括构造方法,需要文字注释;

11 重写方法时,不要漏掉@Override;

12 变量名不能与类名一样。

以上是开发过程中需要注意的点,肯定不全面,欢迎大家补充。虽然不做到上面这些,代码也是没问题的,但是代码质量检测就不会太好。

原文地址:https://www.cnblogs.com/Jenny22/p/6495260.html