当前位置: 代码迷 >> J2SE >> 输出101~200的质数(请教这个if (!f)是什么意思啊)
  详细解决方案

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

热度:336   发布时间:2016-04-24 12:26:40.0
输出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的简写
如果脑子转不过来的话,你先写成后者,慢慢的就会习惯前者的写法了
  相关解决方案