Java的 3类8种基本数据类型,分别是:
- 数值型:byte、short、int、long
- 字符型:char
- 布尔型:boolean
1、整型数据类型
代码语言:javascript复制public class TestPrimitiveDataType {
public static void main(String[] args){
// 测试整型变量
int a = 15;
int b = 015; // 以0开头的是 八进制
int c = 0x15; // 以0x开头的是 十六进制
int d = 0b1101; // 以0b开头的是 二进制
System.out.println(b); //13
System.out.println(c); //21
System.out.println(d); //13
byte age = 17;
short salary = 30000;
int population = 200000000;
long globalPopulation = 74000000000L; //以 L 结尾
}
}
2、浮点型数据类型
代码语言:javascript复制import java.math.*;
public class TestPrimitiveDataType2 {
public static void main(String[] args){
// 测试浮点型变量
float a = 3.14F; // 因为默认数字是double,所以如果要定义为float的话,需要加后缀 F
double b = 618;
double c = 618E-2; // 科学计数法,代表6.18
System.out.println(c); //6.18
// 浮点数是不准确的,千万不能用来作比较
// case1:
float d = 0.1f;
double e = 1.0/10;
System.out.println(d==e); // false
// case2:
float f1 = 423432423f;
float f2 = f1 1;
if(f1 == f2){
System.out.println("f1==f2"); // 答案竟然是相等!可见浮点型的比较是不准确的!
}
else {
System.out.println("f1!=f2");
}
// 如果非要用浮点型来比较,就需要引用 java.math 下的 BigDecimal来解决了
System.out.println("###########################################################");
BigDecimal bd = BigDecimal.valueOf(1.0);
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
bd = bd.subtract(BigDecimal.valueOf(0.1));
System.out.println(bd); // 0.5
System.out.println(1.0-0.1-0.1-0.1-0.1-0.1); // 0.5000000000000001
}
}
3、字符型数据类型
char类型用来表示在Unicode编码表中的字符,它占2个字节,可允许有65535个字符,通常用从 'u0000' 到 'uFFFF'之间的十六进制值来表示(前缀为u表示Unicode)。
代码语言:javascript复制public class TestPrimitiveDataType3 {
public static void main(String[] args){
char a = 'S';
char b = '森';
char c = 'u0061';
System.out.println(c);
// 转义字符
System.out.println("" a 'n' b);
}
}
4、布尔数据类型
boolean类型有两个常量值,就是true和false,在内存中占1位(不是一个字节),不可用0或者非0的整数替代true和false。
代码语言:javascript复制 boolean flag;
flag = true;
if(flag){
// true的分支
} else{
// false的分支
}