java中的小问题

来源:百度知道 编辑:UC知道 时间:2024/05/12 15:42:55
public class laji
{
public static void main(String args[])
{
int x=1,y=2,j;
for(j=x;j%x==0;j++)
{
System.out.println(""+j);
}
}
}

for循环中;j%x; 时候能输出
改成j%y的时候为啥不能输出??

for (条件语句1,条件语句2,条件语句3)
{
......
循环体
......
}
循环结构的语句执行顺序是:条件语句1---〉条件语句2

如果条件语句2为true,则执行循环体,即
((循环体---〉条件语句3---〉条件语句2---〉循环体---〉条件语句3))
.....这样执行下去。

如果条件语句2为false,则不执行循环体

在这个例子里,j%x也就是1%1==0,为true, 所以会执行循环体,而j%y也就是
1%2=1,不等于0,结果为false,所以循环体不会执行。

%是取模,就是余数,j%x时模是0,等式正确,输出
j%y时模不是0 所以不输出