高人给小弟解释一道JAVA

来源:百度知道 编辑:UC知道 时间:2024/04/30 13:48:33
class Test
{
public static void main(String[] args)
{
int a=3,b=5;
int x;
int y;
x=(a+b)%b;
y=a&b;
System.out.println(x);
System.out.println(y);
}
}
这里的X和Y为什么分别等于3和1啊???谢谢拉
下面的那个题也就是取两个的交集是么?可以这么理解么?

x=(a+b)%b;
a+b=8,所以X=8%5;%表示取模,两个数相除的余数。所以X=3;

y=a&b;
&表示位与运算,假如两个运算数都是1,则结果为1。
3是0000 0011
5是0000 0101
所以3&5是0000 0001 这个数就是1。