问题
单项选择题
执行下列程序段之后,输出的结果是( )。
public class Test
public static void main(String[ ] args)
byte a = 2;
short b = 3;
long c = 4;
c=a%b*4%b;
System. out. println(c) ;
A.2
B.1
C.-1
D.-2
答案
参考答案:A
解析: 由于操作数中的a是byte类型,b是short类型,因此a和b按照int类型进行计算;同时又由于变量c是long类型变量,因此所有的操作数都按照long类型进行运算,结果为long类型。又由于运算符*和%处于同一优先级别,因此按照从左到右的顺序进行运算,首先a对b取模,得到2,然后乘以4得8,最后对b取模,得到2。