JavaNote[002] - 基本数据类型

2020-05-28 22:21:10 浏览数 (1)

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的分支
      }

0 人点赞