1.float a = 3.5; int b = a; 打印b的结果是什么
代码错误,运行不了,原因是a是float类型的,无法自动向下转型,如果要转型必须通过强制转换类型来转换,正确代码是float a = 3.5f;int b = (int)a;
2、int a = 5; float b = a; 打印b的结果是什么
打印b的结果是5.0,int类型的a向上转型为float类型,属于自动转换类型
3、char a = 'A'; int b = a; 打印b的结果是什么
打印b的结果是65,char类型的a向上转型为int类型,属于自动转换类型,故输出’A‘的字符编码
4、int a = 68; char b = a; 打印b的结果是什么
代码错误,运行不了,原因是a是int类型的,无法自动向下转型,如果要转型必须通过强制转换类型来转换,正确代码是int a = 68;char b = (char)a;
基本数据类型的类型转换
小的类型转换为大的类型(向上转型):自动/隐式类型转换
自动转型是没有副作用的,当整数向浮点型转换时会加上.0
byte -> short -> int -> long -> float -> double
大的类型转换为小的类型(向下转型):需要做强制/显式类型转换
危害:有可能会发生数据精度的丢失
强制转型是有副作用的,当浮点型向整数转型时,小数部分会丢失
double -> float -> long -> int -> short -> byte
在转换过程中Boolean类型与其他的类型不兼容,格格不入
5、画出基本数据类型的兼容关系图
6、变量的命名规则
- 以下划线、字母、美元符号开头
- 后面跟下划线、字母、美元符以及数字
- 大小写敏感,含义可能不同
- 不能是关键字
驼峰命名法:
多个单词组合在一起标识一个特定的含义时,第一个单词全部小写,第二个以及之后的单词首字母大写,其余字母小写的命名规则
小驼峰法:
第一个单词首字母小写,其他单词首字母大写,如getMyAge
一般用于变量名和方法名
大驼峰法:
全部单词首字母大写,如CheckAge
主要用于接口名和类名
连字符命名法:
所有字母小写,单词之间用连字符(-)隔开
7.分别用表格整理算术运算符, 赋值运算符,比较运算符,逻辑运算符,位运算符,单目运算符,三目运算符
算术运算符
算术运算符 | 名称 | 举例 |
+ | 加法 | 6+18 |
- | 减法 | 7-2 |
* | 乘法 | 7*2 |
/ | 除法 | 7/2 |
% | 取余 | 7%2 |
++ | 自增1 | inti= 7;i++ |
-- | 自减1 | inti= 7;i-- |
赋值运算符
赋值运算符 | 名称 | 举例 |
= | 赋值 | a=b,相当于把b赋值给a |
+= | 加等于 | a+=b等价于a=a+b |
-= | 减等于 | a-=b等价于a=a-b |
*= | 乘等于 | a*=b等价于a=a*b |
/= | 除等于 | a/=b等价于a=a/b |
%= | 取余等于 | a%=b等价于a=a%b |
比较运算符
比较运算符 | 名称 | 举例 | 结果 |
> | 大于 | a=2;b=7;a>b | false |
< | 小于 | a=2;b=7;a<b | true |
>= | 大于等于 | a=2;b=7;a>=b | false |
<= | 小于等于 | a=2;b=7;a<=b | true |
== | 等于 | a=2;b=7;a==b | false |
!= | 不等于 | a=2;b=7;a!=b | true |
逻辑运算符
逻辑运算符 | 名称 | 举例 | 举例 |
&& | 与 | a&&b | a、b都为真,则真 |
|| | 或 | allb | 一方为真,则真 |
! | 非 | !a | a真,则! a假 |
^ | 异或 | a^b | a、b有且仅有一个为真,则真 |
位运算符
位运算符 | 符号 | 备注 | |
左移运算符 | << | 高位舍弃,低位以0补充 | |
右移运算符(有符号) | >> | 低位舍弃,高位以0补充 | 正数高位补0,负数高位补1 |
无符号右移运算符 | >>> | 无论是正数还是负,数,高位都是补0 |