一、浮点类型
浮点类型就可以表示一个小数。
package demo01;
public class Points {
public static void main(String[] args) {
double a1 = 1.20;
}
}
二、浮点数范围
三、注意事项
1、与整数类型类似,Java浮点类型也有固定的范围和字段长度,不受具体OS的影响。
2、Java的浮点型常量默认为double型,声明float型常量,须后加'f' 或'F'
package demo01;
public class Points {
public static void main(String[] args) {
float a1 = 1.1f;
float a2 = 1.2F;
double a3 = a1;
System.out.println(a1);
System.out.println(a2);
System.out.println(a3);
}
}
3、浮点型常量有两种表示形式
十进制数形式
package demo01;
public class Points02 {
public static void main(String[] args) {
double a1 = 5.12;
double a2 = 512.0f;
double a3 = .512;
System.out.println(a1);
System.out.println(a2);
System.out.println(a3);
}
}
科学计数法:
package demo01;
public class Points02 {
public static void main(String[] args) {
double a1 = 5.12e2;
double a2 = 5.12E-2;
System.out.println(a1);
System.out.println(a2);
}
}
4、通常情况下,应该使用double型,因为它比float型更精确。
package demo01;
public class Points02 {
public static void main(String[] args) {
double a1 = 2.123456789;
float a2 = 2.123456789f;//精度会丢失
System.out.println(a1);
System.out.println(a2);
}
}
5、两个浮点数比较时
package demo01;
public class Points02 {
public static void main(String[] args) {
double a1 = 2.7;
double a2 = 8.1 / 3;
//不能直接比较
if (a1 == a2){
System.out.println("两个数相等");
}
//可以用两数差范围比较
if (Math.abs(a1 - a2) < 0.0001){
System.out.println("两个数的相差不大");
}
}
}