1.八种基本数据类型
1.byte - -字节型 大小1个字节
2.short - -短整型 ,大小2个字节
3.int - -整形 ,大小4个字节
4.char - -字符型,大小2个字节
5.long - -长整型 ,大小八个字节
6.float - -单精度浮点型,大小4个字节
7.double - - 双精度浮点型,8个字节
8.boolean - -布尔型 大小没有明确
另外还有String- - 字符串类型,但它不属于基本数据类型
2. 变量
变量语法格式:
数据类型 + 变量名 = 初始值;
例如:int a = 3
int是数据类型中的整形 a 是变量名 3 是赋给a的初始值
注:定义的变量一定给它初始化,不然编译会报错;
2.1特别注意的两个变量的定义
1.长整形变量的定义:
一般的,为了区分整形和长整型 一般在初始值后加L
例如long a= 10L
2.单精度浮点型的定义:
在定义float 类型变量时要在数字后面加f或F,如果不加会出错
字符变量 :
例子:
char aa ='a';
在定义字符变量时不要忘记加单引号
布尔变量:
例子:
boolean a = true;
布尔类型的变量只有true 和false;
布尔类型不能与任何类型进行转换
3.类型转换
类型转换分为两种 显示类型转换和隐式类型转换
3.1隐式类型转换
隐式类型转换又叫自动类型转换 就是在代码编译时编译器自动处理
例子:
double a = 1.2;
float k = 1.3f;
a = k;
将k值赋给a时就进行了类型转换因为k是单精度浮点型占用4个字节而a是双精度浮点型占用8个字节,赋值时编译器自动经进行了类型转换
3.2显示类型转换
显示类型转换又叫强制类型转换
例子:
如图将a的值赋值给k,如果不进行强制类型转换编译器就会报错,因为k 是字节类型占用一个字节 而a是整形占用四个字节将一个大(这里指占用的内存)的赋值给一个小的不能进行自动类型转换,只能进行强制类型转换如下图
4.整形提升
例子 1:
如图将a+k赋值给g 编译器报错了,这是因为a是整形 k是长整型,a+k则进行了整形提升提升为长整型,要将长整型赋值给一个整形就需要强制类型转换如下图
例子 2:
如图这三个变量都是字节类型,但将a+k赋值个同样是字节类型的g时编译器任然报错
这是因为在a+k进行了整形提升,将a+k提升成整形如果要赋值给g就要去进行强制类型转换如下图