1.为什么定义不同的类型的变量:数据类型的大小不同.(比如整型中long>int>short>byte)
2.常量 不可更改的量 用修饰词 final
3.自动类型转换: (1)低级别 ==》 高级别(范围小的转化成范围大的) long类型可以转化成float类型(float类型可以指数表示,保存类型不同)
(2)满足自动类型转化的条件:两种类型要兼容(必须是统一类型)
4.取余的时候尽量避免出现小数(虽然不报错,但是。。。。。)
5. a+=b; <<==>> a=a+b;
a*=b; <<==>> a=a*b;
a/=b; <<==>> a=a/b;
6. 按位与 逻辑与
看数据类型分辨:boolean时是逻辑与 其余情况下()时是按位与
7.按位与(&):两个数都是1是1,
按位或(|):两个数有一个是1结果是1;
按位异或(^):两个操作数相同是0,两个操作数不同是1;
按位非/取反(!):操作数是1,结果为0;操作数是0,结果是1
左移(<<):右边空位补0
右移(>>):左边空位补最高位即符号位
8. 0和任意值按位异或都是原数本身
1和任意数按位与都是原数本身
2.常量 不可更改的量 用修饰词 final
3.自动类型转换: (1)低级别 ==》 高级别(范围小的转化成范围大的) long类型可以转化成float类型(float类型可以指数表示,保存类型不同)
(2)满足自动类型转化的条件:两种类型要兼容(必须是统一类型)
4.取余的时候尽量避免出现小数(虽然不报错,但是。。。。。)
5. a+=b; <<==>> a=a+b;
a*=b; <<==>> a=a*b;
a/=b; <<==>> a=a/b;
6. 按位与 逻辑与
看数据类型分辨:boolean时是逻辑与 其余情况下()时是按位与
7.按位与(&):两个数都是1是1,
按位或(|):两个数有一个是1结果是1;
按位异或(^):两个操作数相同是0,两个操作数不同是1;
按位非/取反(!):操作数是1,结果为0;操作数是0,结果是1
左移(<<):右边空位补0
右移(>>):左边空位补最高位即符号位
8. 0和任意值按位异或都是原数本身
1和任意数按位与都是原数本身