sonar问题修改


fb-contrib:LSYC_LOCAL_SYNCHRONIZED_COLLECTION

  • 问题说明
    StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。
    由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。
  • 解决方案
    StringBuffer sb=new StringBuffer()改为StringBuilder sb=new StringBuilder()

fb-contrib:UCPM_USE_CHARACTER_PARAMETERIZED_METHOD

  • 问题说明
    单个字符操作时indexOf等方法会先将字符串改成StringBuffer,影响性能。
  • 解决方案
    双引号改为单引号 ip.indexOf(“,”) 改为ip.indexOf(‘,’)

fb-contrib:NAB_NEEDLESS_BOXING_PARSE

  • 问题说明
    valueOf将字符串解析为基本类型时是一个对象,如果需要的是基本类型编译器还会做un-boxing,影响性能
  • 解决方案
    int i = Integer.valueOf(s)改为int i= Integer.parseInt(s)

fb-contrib:SPP_EQUALS_ON_ENUM

  • 问题说明
    使用equals(Object)比较枚举值
  • 解决方案
    直接使用==比较

fb-contrib:LO_APPENDED_STRING_IN_FORMAT_STRING

  • 问题说明
    在SLF4J日志记录器中使用字符串拼接记录日志影响性能。logger.info(“Hello “+”world”);
  • 解决方案
    使用{}表达式.logger.info(“Hello {},I am {}”,”world”,“zhangsan”);

b-contrib:LSC_LITERAL_STRING_COMPARISON

  • 问题说明
    使用变量前置的对象比较容易导致空指针异常。str.equals(“someOtherString”);

  • 解决方案
    将比较的常量放在前面”someOtherString”.compareTo(str);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值