Java 字符串“0.00“ 转换为Integer 提示java.lang.NumberFormatException: For input string: “0.00“

拼搏现实的明天。 2023-10-10 13:44 71阅读 0赞

字符串转Integer类型,一般使用 Integer.valueOf 或者是 Integer.parseInt方法。

上述两种方法是转换纯数字字符串的时候才能正常使用,一旦字符串带有小数,就会提示如下错误信息:

java.lang.NumberFormatException: For input string: “0.00”

解决思路:将带有小数点的字符串转换为Double类型,再通过Double.intValue()方法获取对应Integer 类型数据。

实战:

  1. int height = list.stream().filter(item ->{
  2. return item != null;
  3. }).mapToInt(item->{
  4. if(item.get("HEIGHT") != null){
  5. Pattern pattern = Pattern.compile("-?[0-9]+.?[0-9]+");
  6. Matcher isNum = pattern.matcher(String.valueOf(item.get("HEIGHT")));
  7. if (isNum.matches()) {
  8. return Double.valueOf(String.valueOf(item.get("HEIGHT"))).intValue();
  9. }
  10. }
  11. return 0;
  12. }).max().getAsInt();

核心代码片段:

Double.valueOf(String.valueOf(item.get(“HEIGHT”))).intValue();

发表评论

表情:
评论列表 (有 0 条评论,71人围观)

还没有评论,来说两句吧...

相关阅读