当前位置:  开发笔记 > 编程语言 > 正文

为什么在SonarQube中为Java标记了""+ int

如何解决《为什么在SonarQube中为Java标记了""+int》经验,为你挑选了1个好方法。

在Java中,我可以通过""+ intValue将int转换为字符串.Sonarqube和sonarlint将此标记为不合适.

为什么这不合适.据我所知,Integer.toString(intValue)更详细,并且相同.

我可以设想标记它,如果不是""但是对象x用作x + intValue,其中x被初始化为整数.使用Javascript代码进行类似的操作.



1> Sam Sun..:

关于它为什么不好,Java会自动优化String串联以StringBuilder代替使用.这意味着通过这样做

"" + d

你真的在做

new StringBuilder().append(d).toString();

如果你这样做

d + ""

你最终编译

new StringBuilder(String.valueOf(d)).toString();

与仅仅打电话相比,这是相当大的资源浪费

String.valueOf(d);

推荐阅读
雨天是最美
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有