8种基本数据类型
整数类型
数据类型 | 所占位数(比特位) | 取值范围 |
---|---|---|
byte | 8 (1个字节) | -128 ~ 127 |
short | 16 (2个字节) | -32768 ~ 32767 |
int | 32 (4个字节) | -2^31 ~ 2^31 -1 |
long | 64 (8个字节) | -2^63 ~ 2^63 -1 |
计算机中基本的存储单元是字节,底层是二进制,每个二进制位叫做比特位,每个字节占8个比特位
浮点类型
数据类型 | 所占位数(比特位) |
---|---|
float 单精度 | 32 (4个字节) |
double 双精度 | 64 8个字节) |
浮点数默认为double型
float型的数值有一个后缀“f”
public static void main(String[] args){
float a = 3.14f;
double b =3.14;
}
布尔类型
boolean类型只有两个值: false和true,用于判定逻辑条件。
boolean a = true;
boolean b = false;
字符型
编码的概念
计算机内部使用二进制数,一个字符在计算机中是以0和1构成的序列形式来存储的。
将字符映射到它的二进制形式的过程称为编码(encoding)。
字符有多种不同的编码方式,编码表(encoding scheme)定义该如何编码每个字符。
大多数计算机采用ASCII码,Unicode码包括ASCII码,Java支持Unicode码。
ASCII码
American Standard Code for lnformation Interchange
:美国信息交换标准代码
ASCII是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言
它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646
ASCIl码使用指定的7位或8位二进制数组合来表示128或256种可能的字符
标准ASCI码也叫基础ASCII码,使用7位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0到9、标点符号,以及在美式英语中使用的特殊控制字符。
Unicode码
Unicode:统一码,也叫万国码、单一码(Unicode)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。
Unicode是为了解决传统的字符编码方案的局限而产生的,它早期被设计为16位的字符编码,能产生65536个字符。
Unicode后期被扩展为1112064个字符,称为补充字符,Java支持这些补充字符。
char
存放由单引号括起的单个字符,16位,**占2个字节,取值范围:[0,65535] **
char c = '中';
char a = 20013;
数据类型转换
自动类型转换
把一个表示数据范围小的数值或者变量赋值给 —> 另一个表示数据范围大的变量
这种转换方式是自动的,直接书写即可。例如: double num = 10;
强制类型转换
把一个表示数据范围大的数值或者变量赋值给 —> 数据范围小的变量
强制类型转换格式
目标数据类型 变量名 = (目标数据类型)值或者变量