java中數(shù)值范圍的精度丟失如何解決?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
1.java中int,float,long,double取值范圍
public class TestOutOfBound { public static void main(String[] args) { System.out.println(Integer.MAX_VALUE-(-Integer.MAX_VALUE)); //內(nèi)存溢出 System.out.println(Integer.MAX_VALUE); //2的31次方-1,10個(gè)數(shù)位,正的20億左右,用在錢上面不一定夠 System.out.println(Integer.MIN_VALUE); //負(fù)的2的31次方 System.out.println(Long.MAX_VALUE); //2的64次方-1,19個(gè)數(shù)位,很大了,可放心用在錢上面 System.out.println(Long.MIN_VALUE); //負(fù)的2的64次方 System.out.println(Float.MAX_VALUE); //2的128次方-1,38個(gè)數(shù)位,比long多了一倍,這個(gè)主要用來做簡(jiǎn)單數(shù)學(xué)精確運(yùn)算使用 System.out.println(Float.MIN_VALUE); //2的-149次方 System.out.println(Double.MAX_VALUE); //2的1024次方-1,308個(gè)數(shù)位,是float數(shù)位的10倍,主要用來做復(fù)雜運(yùn)算和天文運(yùn)算 System.out.println(Double.MIN_VALUE); //2的-1074次方 } }