public class Zhishu
{
public static void main(String[] args)
{
int num = 0;
for(int i=101;i<=200;i+=2)
{
// int num = 0; for 循环中重新定义了 num 并重新赋值为0,会导致以前的num中的值丢失
boolean h = true;
for(int j = 2;j {
if(i % j ==0)
{
h =false;
break;
}
}
if(!h){continue;}
if(h)
{
// num = 0; 在这里被重新赋值0了
num+=1; //在这里又被加1 所以一直是1
}
System.out.print(" " + i);
System.out.println("num=" + num);
}
}
}
===========================
输出:
===========================
101num=1
103num=2
107num=3
109num=4
113num=5
127num=6
131num=7
137num=8
139num=9
149num=10
151num=11
157num=12
163num=13
167num=14
173num=15
179num=16
181num=17
191num=18
193num=19
197num=20
199num=21
你每循环一次都把num给重置了当然是1了
if(h)
{
num = 0;(每次循环进来都将num赋值为0)
num+=1;
}