发表于: 2017-06-16 20:09:43
2 1038
今天完成的事:
自动类型转换:也叫隐式类型转换,两个不同的类型的数相加,占用内存小的,自动提升到另一个较大数的类型
强制类型转换:也叫显示类型转换,容易丢失精度
强制类型转换例: byte b=3
b=(byte)(b+4) b+4是int型 转换成byte型 极易丢失精度
ASCII:美国信息标准交换码
中国信息交换码:GB2312,GBK(通用),GB18030
Unicode:国际标准码表(Java默认码表)
运算符:
1.算术运算符 2.赋值运算符 3.比较运算符 4.逻辑运算符 5.位运算符 6.三元运算符
算术运算符
+ - * / %(取余数,模运算)
模运算:例:7%5=2, 5%7=5,7%7=0 被模数不够整除得数为被模数,整除得数为0 应用:开关运算
+: 1.加法运算 2.任何数据和字符串相加,都是相连接:例.3+"0"=30
++:自增,就是在原有数据基础上+1,再赋给原有数据,a++是两次运算,先+1,再赋值
--:自减,同理
赋值运算符
= += -= *= /= %=
例:a+=1 a=a+2 (将左右两边的和赋给左边)
+=这种类型的运算,是一次赋值运算,会在底层做数值类型的转换并检查是否能赋值进去(数据类型大小是否装得下)
比较运算符
< > <= >= ==(相等于,做的是比较运算) !=(不等于) instanceof 检查是否是类的对象
比较运算符的结果不是true就是false
逻辑运算符:(用于连接两个布尔类型的表达式x>2 x<4等)
&:与运算 运算特点:一假全假
丨:或运算 运算特点:一真全真
^:异或运算 运算特点:不同为真 相同为假
!:非运算 判断事物的另一面 !true=false !false=true !!false=false
&&:双与,左边一组运算一旦为假,则右边不参与运算,结果为false 例int=1 x>2&&x<5; x>2为假,X<5则不运算 取值为false 和与运算结果相同
丨丨:双或,当左边为真,右边则不参与运算,原理同双与 与或运算结果相同
位运算:
<< 左移 例:3<<2=12 3先变成二进制,数值向左移动空位0补
>> 右移 例:3>>1=1 3先变成二进制,数值右移最高位根据原最高为而定 是1补1,是0补0
>>> 无符号右移 无论最高位是0还是1 右移后最高位用0补
位运算规则:移的为数是二的幂数,例:3<<2=12(3*2*2=12) 3>>1=1(3/2=1)
三元运算符
三个元素参与运算的符号 ? :
格式: (条件表达式)?表达式1:表达式2 例:int x=1 ,y;
如果条件是true,运算后的结果是表达式1 y=(x>2)?10:20;
如果条件是false,运算后的结果是表达式2 //y=20
明天计划的事:杀蟑螂 接着学
遇到的问题:无
评论