记录float类型的坑

  1. 在mysql中存储float类型最好使用decimal,因为float会改变数据精度,比如:你程序中是49023.32,但是存储到数据库中就可能成了49023.31.使用decimal类型不会出现这种情况(使用varchar类型也可以)。
  2. 在java中float直接转换Bigdecimal类型会出现不准确的问题
float i = 2.08;
BigDecimal de = new Bigdecimal(i);
// de 的值可能就会是 2.07658 等
// 如何避免这种情况的出现。
// 使用字符串类型  这样转换出来的值就不会出现精度变化的情况
Bigdecimal de = new Bigdecimal(new String(i));
# java  mysql 

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×