数据的基本类型

位(bit):是计算机 内部数据 存储的最小单位,11001100是一个八位二进制。

字节(byte):是计算机中 处理数据的基本单位,习惯用大B来表示

1B(byte)=8bit(位)

整数类型

byte 1字节 8位

short 2字节 16位

int 4字节 32位

long 8字节 64位

浮点型

float 4字节 32位

double 8字节 64位

布尔型

boolean 1/8字节 1位

字符型

char 2字节 16位


		//整形的4中类型
        int num1=1;//最常用的类型4字节
        short num2= 2;//比较短
        long num3=3L;//比较长的整形8字节
        byte num4= 127;//最大127,最小-128

        //浮点型
        float num5= 5.5F;//四字节,需要写个F
        double num6 = 8.1321;//八字节

        //字符类型
        char a = '1';

        //布尔值
        boolean b1= true;
		//整数拓展 二进制0b开头 8进制0开头 16进制0x开头
        int i1=0b10;//2进制
        int i2=010;//8进制
        int i3=10;//10进制
        int i4=0x10;//16进制

        System.out.println(i1);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println(i4);
        System.out.println("===============================================");
        //浮点数拓展
        //银行业务用什么 不能用浮点型,浮点数不靠谱
        //BigDecimal,C#中是Decimal
        //有限 离散 舍入误差 大约 接近但不等于
        //最好完全避免使用浮点数进行比较
        //最好完全避免使用浮点数进行比较
        //最好完全避免使用浮点数进行比较
        //举个浮点数不靠谱的例子
        float f1 = 2121312354646545F;
        float f2 = f1+1;
        System.out.println(f1==f2);//相等,因为f1溢出了
        float f3=0.3F;
        float f4=0.3F;
        float f5=0.3F;
        System.out.println(f3+f4+f5);//0.90000004
        float f6=0.9F;
        System.out.println((f3+f4+f5)==f6);//false
        //
        float f7=0.1F;
        double d1 = 0.1;
        System.out.println(f7==d1);//false,因为两种类型精度不一样导致的

        System.out.println("===============================================");

        char c1= 'a';
        char c2= '中';

        System.out.println(c1);
        System.out.println((int)c1);
        System.out.println(c2);
        System.out.println((int)c2);
        //字符能转成数字
        //所有的字符本质还是数字
        //编码表 unicode 97=a
        System.out.println('u0061');//16进制 输出 a
        //unicode占用两个字节(0000—FFFF),容纳65536个字符


        String sa = new String("HW");
        String sb = new String("HW");
        String sc ="HW";
        String sd = "HW";
        System.out.println("sa==sb:"+(sa==sb));//false
        System.out.println("sc==sd:"+(sc==sd));//true 
		//这里跟C#不太一样
原文地址:https://www.cnblogs.com/huacha/p/13917225.html