java布尔值问题

您好!如你上次所说:因为每次循环的时候,bool被赋值为true了啊,看for循环里的,booleanbool=true;但是booleanbool=true;是再外循环... 您好!如你上次所说:因为每次循环的时候,bool被赋值为true了啊,看for循环里的,boolean bool = true;
但是boolean bool = true;是再外循环被赋值为true的,而判断是不是质数是在内层循环操作的。外层if(bool)是怎么拿到质数的
展开
 我来答
爬虫飘过
2017-02-04 · 超过59用户采纳过TA的回答
知道小有建树答主
回答量:162
采纳率:0%
帮助的人:68.4万
展开全部
因为默认为true,就是默认所有的数就是质数啊,你说的内循环,是用来过滤那些不是质数的数据的,此时bool被赋值为false,下面的if判断就会为false,从而跳过消息打印
至于什么时候被赋值为false,在内循环里面,当i%j==0的时候,就代表这个数可以被之前的数整除,比如4可以被2整除,9可以被3整除,这时候,就把bool赋值为false。
当i=7,并且j=7的时候,bool为true。这时候,又和上面不一样,因为j=7的时候,会跳出内循环,所以不会判断if(i%j==0),但是在j=2,3,4,5,6的时候,还是判断了if语句的
追问
差不多明白了,就是if(bool)值为真我才打印,是假就不打印。
来自:求助得到的回答
jjgsbjj
2017-02-04 · 超过49用户采纳过TA的回答
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:68.6万
展开全部
bool局部变量是在最外层for循环里面生效的,所以直到每一次最外层for结束一次循环为止,bool变量都会一直存在,自然可以被if语句拿到,请看清楚bool变量的声明位置,明确变量的作用域。额,你好像问的是i,那个的原理和bool的一样的。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式