不想科学计数法显示所以把double转为string类型,但数值和数据库不统一

因为超过16位就会变成科学记数法,不希望用科学记数法显示出来,所以

img


采用这种写法,希望输出的value是不以科学记数法的
我数据库中value值为

img

但是我用postman调程序输出来的数据最后是

img

注:程序中的value 是double类型,数据库的value 是Decimal(20,2)

Java的double有效数字为16位,所以超过的部分精度会丢失,建议对应的java类型直接使用 BigDecimal 试一试

回答不易,求求您采纳点赞哦

您将 double 转换为字符串时,可以使用 C 格式字符串指定数字的格式,以便与数据库中的数字格式匹配。例如,使用 "%.2f" 作为格式字符串可以确保只有两个小数位。

C# 代码示例:

double value = 123.456789;
string formattedValue = string.Format("{0:0.00}", value);

如果您希望精确地保留 double 的所有位数,请使用 BigDecimal 类型。

是这样嘛,怎么还不可以