万物都在罐子里, 活着
变量的定义和使用(赋值和获取值)
语法:
第1种:先定义,后赋值
数据类型 变量名;
变量名 = 对应数据类型的值;
int age;
age = 16;
第2种:定义同时赋值(最常用方式)
数据类型 变量名 = 对应数据类型的值;
int age = 16;
第3种:同时定义多个相同类型的变量(不推荐使用)
int age1 = 10;
int age2 = 10;
类型相同的前提下
数据类型 变量名 = 值,变量名2 = 值2,变量名3 = 值3;
int age1 = 10,age2=10;
注意:
1.必须先声明,并且初始化后才能使用
2.必须有数据类型
3.作用域:从开始定义到所在的花括号结束之内可以使用
4.同一作用域下,变量名不能重复定义
类型转换操作(转换顺序)
自动转换:大类型 变量名 = 小类型的值;
强制转换:类型 变量名 =(类型)值; //类型不兼容的情况下使用,但是注意会损失精度
byte short char-->int -->long --> float-->double(boolean不能参与运算)
前置++和后置++的区别
在只有++操作的情况下前置和后置是没有区别 i++ ++i
只要有其他操作才会存在区别:
前置++ (++i): 先做自增,再做其他操作
后置++ (i++): 先做其他操作,再做自增
比较权威解释:
++a 表示取a的地址, 增加它的内容, 然后把值放在寄存器中
a++ 表示取a的地址, 把它的值装入寄存器, 然后增加内存中的a的值
+=的底层原理
short s = 10;
s+=20; --> s = (short)(s + 20);
s*=20; --> s = (short)(s * 20);
比较运算符结果的类型
boolean 变量名 = 表达式 比较运算符 表达式;
注意:= 表示赋值运算符, == 表示是否相等.
三元运算符
数据类型 变量名 = boolean表达式 ? 结果1:结果2;
注意:结果1和结果2的值的类型要和前面的数据类型一致
逻辑运算符结果的类型(&& || !)
与(短路与和位与): 只要有一个表达式为false,结果就为false
或(短路或和位或):只要有一个表达式为true,结果就为true
位与(&)和短路与(&&)的区别
位与(&):不管前面结果是怎么样,都会将整个表达式全部执行,才会出结果
短路与(&&):只要有一个表达式结果为false,后面表达式将不再执行,立马出结果false
位或(|)和短路或(||)的区别
位或(|):不管前面结果是怎么样,都会将整个表达式全部执行,才会出结果
短路或(||):只要有一个表达式结果为true,后面表达式将不再执行,立马出结果true
网友评论