前端传值到后端,后端解析为科学计数法

解决办法

1、new BigDecimal

我们使用了BigDecimal 类来处理科学计数法表示的数字。将科学计数法表示的数字作为字符串传递给BigDecimal构造函数,它将自动将其转换为普通的数字表示

java 复制代码
import java.math.BigDecimal;
public class ScientificToDecimal {
    public static void main(String[] args) {
        String decimalNumber = "1.3860490888E8";
        String result = StringUtils.isNotBlank(decimalNumber) ? new BigDecimal(decimalNumber ).toPlainString() : new BigDecimal("").toPlainString()
        System.out.println(result );//138604908.88
    }
}

2、使用字符串的替换

我们首先将科学计数法表示的数字按照字符"E"进行分割,得到两个部分:底数和指数。然后,将底数部分转换为double 类型,并使用Math.pow方法计算出最终的十进制表示

java 复制代码
public class ScientificToDecimal {
    public static void main(String[] args) {
        String scientificNumber = "2.3456789E10";
        String[] parts = scientificNumber.toUpperCase().split("E");
        double decimalNumber = Double.parseDouble(parts[0]) * Math.pow(10, Double.parseDouble(parts[1]));
        System.out.println(decimalNumber);
    }
}
相关推荐
琹箐2 分钟前
ant-design4.xx实现数字输入框; 某些输入法数字需要连续输入两次才显示
前端·javascript·anti-design-vue
程序员-小李3 分钟前
VuePress完美整合Toast消息提示
前端·javascript·vue.js
风象南11 分钟前
SpringBoot的5种日志输出规范策略
java·spring boot·后端
cccc来财17 分钟前
Go中的协程并发和并发panic处理
开发语言·后端·golang
咖啡啡不加糖18 分钟前
深入理解MySQL死锁:从原理、案例到解决方案
java·数据库·mysql
zimoyin19 分钟前
Compose Multiplatform 实现自定义的系统托盘,解决托盘乱码问题
java
狐凄20 分钟前
Python实例题:Python计算线性代数
开发语言·python·线性代数
啾啾Fun36 分钟前
【Java微服务组件】分布式协调P4-一文打通Redisson:从API实战到分布式锁核心源码剖析
java·redis·分布式·微服务·lua·redisson
Uyker1 小时前
从零开始制作小程序简单概述
前端·微信小程序·小程序
消失的旧时光-19431 小时前
Android USB 通信开发
android·java