读书人

输出101~200的质数(请教这个if (!f)是

发布时间: 2012-02-23 22:01:36 作者: rapoo

输出101~200的质数(请问这个if (!f)是什么意思啊?)

Java code
public class Primenumber {    public static void main(String[] args) {        for (int i=101; i<=200; i+=2) {                        boolean f = true;                        for (int j=2; j<i; j++) {                if(i%j == 0) {                    f = false;                    break;                }            }                        if (!f) { //请问这里到底是什么意思啊?脑子转不过来                continue;            }            System.out.println(i + "  ");        }    }}


[解决办法]
if(!f)
--如果f=false(表示当前i不是质数),则!f就是true,那么执行continue;直接进行下一次for循环,不会执行到打印的那个语句了;如果f=true(表示当前i是质数),则!f就是false,那么不会进入if,从而执行打印的那个语句,输入质数i。
[解决办法]
你这样记就可以了:
f就是f==true的简写
!f就是f==false的简写
如果脑子转不过来的话,你先写成后者,慢慢的就会习惯前者的写法了

读书人网 >J2SE开发

热点推荐