4.3Java数据类型划分(浮点类型)
浮点数
如果要想描述的小数的数据,默认的数据类型使用的是double
范例:定义小数
public class TestDemo {
public static void main(String args[]){
System.out.println((double)2);
double num = 10.2 ; //这是一个小数,默认类型就是double
//num是double类型 * int型常量 = double类型
//num * 2.0(由int变为的double型)
System.out.println(num * 2);
}
}
而同时最需要注意的是,double可以保存的数字是最大的,也就是说double可以保存全宇宙中最大的有意义数字。
而除了double之外也可以使用float来描述小数,但千万要记住的是float范围要小于double,所以如果要想直接声明float变量,那么就要求在定义的时候进行强制转换,在数字后面加一个字母 “F”或者“f”。
范例:定义float变量
public class TestDemo {
public static void main(String args[]){
float f1 = 1.1F ;
//float变量 * 2 int常量 = float类型
System.out.println(f1 * 2);
System.out.println(1.1*1.1); //传统bug
}
}
但是既然说到了小数问题就必须考虑一下整型计算题
范例:观察如下计算结果
public class TestDemo {
public static void main(String args[]){
int num1 = 10 ;
int num2 = 4 ;
//int型 ÷ int型 = int型
System.out.println(num1/num2);
//如果要想精确的进行计算,那么就必须保证有一个类型是double型或float型
System.out.println(num1/(double)num2);
System.out.println((float)num1/num2);
}
}
以后进行除法计算的时候请一定要注意好你的类型
public class TestDemo {
public static void main(String args[]){
int num1 = 10 ;
int num2 = 3 ;
//int型 ÷ int型 = int型
System.out.println(num1/num2);
//如果要想精确的进行计算,那么就必须保证有一个类型是double型或float型
System.out.println(num1/(double)num2);
System.out.println((float)num1/num2);
}
}
除不尽的问题也不会一直写下去