如何解决声纳错误:取消装箱值,然后再次重新装箱
我无法弄清楚装箱值在何处被拆箱 重新包装在下面的示例代码中。有人可以帮我吗 修复此声纳错误。
List<Float> floatList = new ArrayList<>();
Float hundred = 100F;
Float zero = 0F;
String []stringFloatValues= new String[]{1.2,3.44,5.66};
for(String stringFloat: stringFloatValues){
Float value = NumberUtils.isParsable(stringFloat)
? Float.valueOf(stringFloat) / hundred
: zero; // sonar showing issue in this statement
floatList.add(value);
}
解决方法
owner_id
在计算时,进行除法(List<Float> floatList = new ArrayList<>();
float hundred = 100F;
float zero = 0F;
String[] stringFloatValues = new String[]{"1.2","3.44","5.66"};
for (String stringFloat: stringFloatValues) {
float value = NumberUtils.isParsable(stringFloat)
? Float.parseFloat(stringFloat) / hundred
: zero; // sonar showing issue in this statement
floatList.add(value);
}
),并将所有内容保留为原始类型/
。
float
会给出一个装箱的Float,也需要取消装箱才能浮动,就像Float.valueOf
一样。如上所述,在hundred
给出浮点数的情况下,生成的浮点数parseFloat
将装在value
上。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。