一.基本数据类型的兼容关系
1.基本数据类型的兼容关系图
2.float a = 3.5; int b = a; 打印b的结果是什么?
程序代码注意事项:java默认的浮点类型为double,需要先强制转换为float,float转换为int是显式转换类型
结果:
3. int a = 5; float b = a; 打印b的结果是什么?
int ------> float 为自动(隐式)转换类型,结果为:5.0
4.char a = 'A'; int b = a;打印b的结果是什么?
char ------> int,为自动(隐式)转换类型,字符转换为对应字符编码,结果为:65
5.int a = 68; char b = a; 打印b的结果是什么:
int ------>char,为强制(显式)转换类型,字符编码转换为对应字符,结果为:D
二.变量的命名规则
1.驼峰命名法
小驼峰式命名法(lower camel case):
第一个单字以小写字母开始,第二个单字的首字母大写。例如:firstName、lastName。
大驼峰式命名法(upper camel case):
每一个单字的首字母都采用大写字母,例如:FirstName、LastName、CamelCase,也被称为 Pascal 命名法。
在JAVA中:类名的标识符一般用大驼峰式书写格式,方法和变量的标识符则多用小驼峰式书写格式。
2.连字符命名法
连字符,是用于一个合成词的两部分之间的或一个单词的字节之间的一种标点符号,尤其是一行或一段结束时用。连字符只指“中划线”, 不包括上划线和下划线。
三.分别用表格整理算术运算符, 赋值运算符,比较运算符,逻辑运算符,位运算符,单目运算符,三目运算符
四. =和==的区别
=为赋值运算符,一般表示将某一个数值赋值给某个变量
==为比较运算符,通过用于两个数值或两个变量之间的比较
五.i++和++i的区别
i++表示先赋值后自增1,++i表示先自增1后赋值
如图中程序所示b = a++,先将a=1赋值给b,此时b等于1,完成后自增1,a=2;
++i
如图中程序所示b = ++a,先自增1,此时a等于2,然后赋值给c,c=2
六.+运算符操作数值, 字符, 字符串的区别是什么
操作数值时就是普通的数学加法运算,两数相加;
运算字符时是将两字符的代码相加;
运算字符串时是将两字符串进行拼接。
结果:
七.&和&&的区别,以及 |和||的区别
&为普通的与逻辑运算符,“&”两边都为true才结果才为true,但两边都需要进行运算,且要将运算完成到底才能得到结果;&&为短路与逻辑运算符,“&&”左边为false,右边就不会进行运算了,直接得到结果false,因为右边不管是什么都对结果不会产生影响。
|为普通的或逻辑运算符,“|”两边都只要一边为true,结果便为true,但两边都需要进行运算,且要将运算完成到底才能得到结果;||为短路或逻辑运算符,“||”只要左边为true,右边就不会进行运算了,直接得到结果true,因为右边不管是什么都对结果不会产生影响。
八. &和|可以作为逻辑运算符使用, 也可以作为位运算符使用, 区别是什么
作为逻辑运算符时,用于比较符号两边的Boolean值,而得出最后的结果,结果也为Boolean值
作为位运算符时,对符号两边数值的比特位进行逐位比较,得到一个新的码元,从而获得为新的数值。
九. 什么是原码、反码、补码
原码:符号位(0表示正数,1表示负数)再加上所求真值绝对值的二进制数,如:-5,8位的原码为10000101
反码:正数的原码就是反码,负数的反码为原码除符号位的按位取反。如:-5,8位的反码为11111010
补码:正数的补码也为原码本身,负数的补码为补码的末位加1。如:-5,8位的补码为11111011
十.几种运算符的图解实例
1. 图解3&5的运算过程和结果
2. 图解3|5的运算过程和结果
3.图解~5的运算过程和结果
4. 图解3^5的运算过程和结果
5. 图解8<<2的运算过程和结果
6. 图解8>>2的运算过程和结果
7. 图解~5和~-5的运算过程和结果
十. >>和>>>的区别是什么,如何最快速计算 8 * 4
如何最快速计算 8 / 4
>>为右移运算符,>>>为无符号的右移运算符
可以通过将8向左移2个单位快速计算出8*4,即8<<2
可以通过将8向右移2个单位快速计算出8/4,即8>>2
十一.运算符的优先级, 如何改变优先级
Java中大部分的运算符的优先级都与传统的数学中的运算优先级一致,单目,赋值,三目运算符例外,它们采用从右向左的结合运算,我们可以通过添加()来改变优先级,来实现我们的目的
十二.什么是单目(一元), 双目(二元), 三目(三元)运算符
单目运算符表示表达式中仅有一个操作数,如 i++;
双目运算符则是运算表达式中有两个操作数,如+,-,*,/等
三目运算符则是运算表达式中有三个操作数,目前只有 ?:
十三. 说说第二行代码中有几个运算符和运算顺序
有 赋值运算符 = ,单目运算符i++,比较运算符 >,以及三目运算符?:共四个。
运算顺序为,先运算 > ,然后运算?:,接着运算a++,最后运算=。
int a = 10
char b = a++ > 10 ? 'A': 'B'
打印a
打印b