问题
1.考虑以下代码片段。
arrayOfInts[j] > arrayOfInts[j+1]
该代码包含哪些运算符?
2.考虑以下代码片段。
int i = 10;int n = i++%5;
- 代码执行后
i和n之后的值是什么? i和n最终值是什么,如果不是使用后缀增量运算符(i++),您可以使用前缀版本(++i))吗?
3.要反转boolean值,您将使用哪个运算符?
4.使用哪个运算符比较两个值,=或==?
5.解释以下代码示例:
result = someCondition ? value1 : value2;
练习题
1.更改以下程序以使用复合赋值:
class ArithmeticDemo {public static void main (String[] args){int result = 1 + 2; // result is now 3System.out.println(result);result = result - 1; // result is now 2System.out.println(result);result = result * 2; // result is now 4System.out.println(result);result = result / 2; // result is now 2System.out.println(result);result = result + 8; // result is now 10result = result % 7; // result is now 3System.out.println(result);}}
2.在下面的程序中,解释为什么将值“ 6”连续打印两次:
class PrePostDemo {public static void main(String[] args){int i = 3;i++;System.out.println(i); // "4"++i;System.out.println(i); // "5"System.out.println(++i); // "6"System.out.println(i++); // "6"System.out.println(i); // "7"}}
问题答案
- 问题:代码包含哪些运算符?
答:>,+ - 问题:代码执行后
i和n之后的值是什么?
答案:i是11,n是0。 - 问:
i和n最终值是什么,如果不是使用后缀增量运算符(i++),您可以使用前缀版本(++i))吗?
答案:i是11,n是1。
- 问题:代码执行后
- 问题:.要反转
boolean值,您将使用哪个运算符?
答:逻辑补码运算符“!”。 - 问题:哪个运算符用于比较两个值,
=或者==?
答:==被用于比较,=用于赋值。 问题:解释以下代码示例:
result = someCondition ? value1 : value2;
答案:该代码应读为:“如果someCondition是true,则将value1的值赋值给result。否则,将value2的值赋值给result。”练习题答案
1.这是一种解决方案:
class ArithmeticDemo {public static void main (String[] args){int result = 3;System.out.println(result);result -= 1; // result is now 2System.out.println(result);result *= 2; // result is now 4System.out.println(result);result /= 2; // result is now 2System.out.println(result);result += 8; // result is now 10result %= 7; // result is now 3System.out.println(result);}}
2.
class PrePostDemo {public static void main(String[] args){int i = 3;i++;System.out.println(i); // "4"++i;System.out.println(i); // "5"System.out.println(++i); // "6"System.out.println(i++); // "6"System.out.println(i); // "7"}}
该代码的System.out.println(++i);计算结果为6,因为前缀版本的++计算结果为递增值。下一行System.out.println(i++);计算为当前值(6),然后加1。因此,直到下一行才打印“ 7”。
