八大基本数据类型
数值型 byte 8bit(1字节) short 16bit (2字节) int 32bit(4字节) long 64bit(8字节) 浮点型 float (4字节) double(8字节) 布尔型 boolean 字符型 char int 第一位1和0代表正负,剩下31为数值位 byte 第一位1和0代表正负,剩下7位为数值位 short 第一位1和0代表正负,剩下15位为数值位 Java的数据类型本质上是在内存中开辟不同形式的内存空间
计算机如何存储数据
原码,反码和补码z 原码就是二进制数据其本身,正数的反码=原码=补码,负数的反码=原码符号位不变,其他按位取反。负数的补码=反码末尾加一,如果末尾是0则为1,若末尾是1则为10。 计算机存储数据都是用补码。
二进制加法 1+0=1;0+1=1;0+0=0;1+1=10; 11+11=110;111+111=1110;1111+1111=11110 加减法溢出:正数方向溢出,减去2^n,负数方向溢出,加上 2^n.(n是数据类型的位数)。 比如char a=127(8位,1字节) 127+1=128-256=-128.
类型转换
自动类型转换 byte------>short------>int----->long/float(int到float可能会发生精度丢失)----->double char—>int 强制类型转换 非以上情况,就要强制类型转换 比如int—>char不能转换 如果要转换需要强制,比如int a;char b=(char) a;
|