一、运算符
- 算数运算符
- 赋值运算符
- 关系运算符
- 逻辑运算符
- 三元运算符
- 自增自减
1、算数运算符
- 什么是算数运算符,都有哪些?
对常量或者变量操作的符号。
+ - * / %
- 什么是表达式?
用运算符将常量或者变量连接起来,符合Java语法的式子。
- / 和 % 的区别是什么?
两个整数相除,结果只得到商;
两个整数取余,结果只得到余数;
要是想要结果有小数,那么就必须要有小数的参与运算。
2、关于数据类型的隐式转换和显示转换?
隐式转换: 将数据类型范围较小的数据,赋值给另一个数据类型范围较大的数据,此过程计算机会自动的完成。
例如: double a = 200; 因为整数默认为int类型,所以此时"200"为int类型,在赋值的过程,200属于int类型,但是会在赋值过程中执行隐式转换自动提升为double类型,然后进行赋值。
强类型转换: 将数据类型范围较大的数据,赋值给另一个数据类型范围较小的数据,此过程需要将数据较大的类型强制转换为较小的数据类型。
例如: int b = (int)20.0; 因为20.0默认为double类型,所以此时想要将20.0赋值给int,就需要对20.0进行强类型转换。 但是这样的弊端是会造成数值精度缺失。
3、什么是赋值运算符,都有哪些?
赋值运算符是指为变量或常量指定数值的符号。赋值运算符的符号为“=”,它是双目运算符,左边的操作数必须是变量,不能是常量或表达式。
赋值运算符其中包含了强制类型转换。
+=、=、-=、*=、/=、%=
4、什么是关系运算符,都有哪些?
确定两个操作数之间的关系。
>、>=、<、<=、==、!=
5、什么是逻辑运算符,都有哪些?
逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是true或者是false。
&、&&、|、||、!、^
a | b | a&b | a&&b | a|b | a||b | !a | a^b |
---|---|---|---|---|---|---|---|
true | true | true | true | true | true | false | false |
true | false | flase | false | true | true | false | true |
false | true | false | false | true | true | true | true |
false | flase | false | false | false | false | true | false |
6、什么是三元运算符?
表达式: int a = 关系表达式 ?表达式1 :表达式2; // 如果有返回值一定需要接受
- 执行过程
先进行关系表达式判断,当关系表达式成立那么就执行表达式1;当不成立时,就执行表达式2。
- 什么情况下三元运算符不能替代if的格式2?
if--格式2
if (关系表达式) {
语句体1;
} else {
语句体2;
}
当 if格式2 中是语句体是输出语句的时候就不能被三元运算符所替代。
7、自增自减
++、--
例题:
int a = 1;
a++;
当"++"在a前面就是先进行a+1,然后再参与运算。
++a;
当"++"在a后面就是先参与运算,然后再进行a+1。
反之,a--和--a亦是如此。
二、Java流程控制的结构
1、Java流程控制的结构有几种,分别是什么?
有3种;
分别是顺序结构、分支结构(选择结构)0、循环结构。
2、什么是顺序结构?
顺序结构即是Java程序默认的结构,即是从上到下的顺序执行代码。
3、什么是分支结构?
if 和 switch
① if 又有三种格式:
if 格式1:
if (关系表达式) {
语句体;
}
if 格式2:
if (关系表达式) {
语句体1;
} else {
语句体2;
}
if 格式3:
if (关系表达式1) {
语句体1;
} else if (关系表达式2){
语句体2;
} else if (关系表达式n){
语句体n;
} else {
语句体 n+1;
}
② switch :
switch (表达式) {
case value1:
break;
case value2:
break;
...
case valueN:
break;
default:
break;
}
- 其中表达式类型可以有: byte 、short 、int 、char 、枚举(JDK5.0新增)、String(JDK7.0新增);
- 其中的case只能写常量并且不能重复;
- case的穿透现象: 即是当匹配到了对应的case后,执行完后并没遇到break,那么此时后面的case都内的语句体值都会被执行,直到遇到break停止或者是执行完该switch。