1. float a = 3.5; int b = a; 打印b的结果是什么
我们输入这段代码以后很清楚的看到报错,而报错的原因在我们尝试着将这个代码运行之后就会发现
我们发现他会有一个从double转换到float可能会有损失。如果想让这个代码强行转换我们怎么办呢?
我们可以给他强制转换,但是这样容易损失。
2. int a = 5; float b = a; 打印b的结果是什么
将int类型转换成float类型就很容易了
’
3. char a = 'A'; int b = a; 打印b的结果是什么
我们可以看到给a赋值的A经过int类型的转换输出了65,这是因为char是字符型,而单引号代表一个字符,转换成整数型时会将字符变换成整数
4. int a = 68; char b = a; 打印b的结果是什么
我们将代码运行结束之后可以看到他会提示从int转换成char可能会有损失
int是4字节而char是占一个字节,从大到小转换,char可能会放不下,所以会损失
5. 画出基本数据类型的兼容关系图
6. 变量的命名规则
- 必须以字母、下划线或者美元符号开头;
- 变量名必须由字母、数字、下划线组成;
- 变量名不可以和java关键字冲突
- 变量名的长度没有限制,但却区分大小写(如:a和A是两个不同的变量)
- 变量名当有多个单词组成时,第一个单词首字母小写,后一个单词的首字母大写(如:myHome)
- 名字最好和意思相近
- 驼峰命名法
- 是指混合使用大小写字母来构成变量和函数的名字
- 大驼峰:第一个字母大写后面也大写,应用于类名、函数名、属性名、命名空间
- 小驼峰:第一个字母小写,后面大写,应用于变量
- 连字符命名法
7. 分别用表格整理算术运算符, 赋值运算符,比较运算符,逻辑运算符,位运算符,单目运算符,三目运算符
算术运算符
赋值运算符
比较运算符
逻辑运算符
位运算符
单目运算符
三目运算符
8. =和==的区别
=是赋值运算,而==判断值是否相等
9. i++和++i的区别
i++是先赋值,然后再自增;++i是先自增,后赋值
10. +运算符操作数值, 字符, 字符串的区别是什么
'A' 是一个字符会被转换成数字 "A"是直接打印出来的A "4+5"是直接打印出来45 4+5是算术符号等于9
11. &和&&的区别
&是前面的条件不成立后面也会运行而&&前面的条件不成立后面不会运行
& 无论左边结果是什么,右边还是继续运算;&&当左边为假,右边不再进行运算。
12. |和||的区别
|是前面的条件成立后面也会运行而||前面的条件成立后面不会运行
| 无论左边结果是什么,右边还是继续运算;||当左边为真,右边不再进行运算。
13. &可以作为逻辑运算符使用, 也可以作为位运算符使用, 区别是什么
- 逻辑运算进行逻辑判断,并且有短路功能提高效率
- 位运算也可以进行逻辑判断,但是没有短路功能效率较低
- 位运算符因为运算过程中是转换成二进制,所以可以用于运算;
14. |可以作为逻辑运算符使用, 也可以作为位运算符使用, 区别是什么
- 逻辑运算进行逻辑判断,并且有短路功能提高效率
- 位运算也可以进行逻辑判断,但是没有短路功能效率较低
15. 什么是原码、反码、补码
- 原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值。
- 反码:正数的反码是其本身。负数的反码是在其原码的基础上, 符号位不变,其余各个位取反。
- 补码:正数的补码就是其本身。负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1
16. 图解5&8的运算过程和结果
一样为1取1,不同取0
17. 图解5|8的运算过程和结果
只要有一个为1则返回1
18. 图解~5的运算过程和结果
将操作数的每个位全部取反
19. 图解5^8的运算过程和结果
相同为0,不同为1
20. 图解8<<2的运算过程和结果
操作数(补码)
左移俩位
21. 图解8>>2的运算过程和结果
右移俩位
22. 图解~5和~-5的运算过程和结果
22. >>和>>>的区别是什么
>>右移俩位
>>>右移三位
- 如何最快速计算 8 * 4
左移俩位
- 如何最快速计算 8 / 4
23. 说说运算符的优先级, 以及如何改变优先级
- 算术运算符优先级较高,关系和逻辑运算符优先级较低。
- 多数运算符具有左结合性,单目运算符、三目运算符、赋值运算符具有右结合性。
- 可以用()来强行改变优先级
24. 什么是单目(一元), 双目(二元), 三目(三元)运算符
单目: 运算符只对一个操作数进行运算
~5 按位非
i++ 自增
!a 逻辑取反
双目: 运算符对两个操作数进行运算
3 + 4
5-2
6*7
8/2
10%3
a > b...........
三目: 运算符对三个操作数进行运算
?:
25. 说说第二行代码中有几个运算符和运算顺序
4个
1. > 2.? : 3.++ 4. =
int a = 10
char b = a++ > 10 ? 'A': 'B'
打印a
打印b



