请问我的For循环中,多了一个分号,这道题的结果就不同,这是为啥?

来源:4-9 Java循环语句之 for

大数据PMP

2018-06-17 12:53

package shuomac.www;


public class HelloWorld{

public static void main(String[] args) {

int sum = 0;

for (int mashuo =1;mashuo <= 100;mashuo++) {

if (mashuo % 3 != 0);//就是多了这个分号,计算结果是5050,少了这个分号,计算结果就是对的,这是为啥?


{

sum = sum + mashuo;

}

}

System.out.println("The Number Can't divide By 3 Sum is: "+sum);

}

}





写回答 关注

8回答

  • NickGu
    2018-06-17 14:57:39
    已采纳

    加分号可能是提前结束if语句,后面大括号不执行吧*(来自一个的初学者想法)

    大数据PMP

    非常感谢!

    2018-06-20 02:16:25

    共 1 条回复 >

  • Ferne
    2018-06-29 15:39:50

    学习了

  • 欧姆表不孤独
    2018-06-27 14:19:11

    if (i==0) ;

    {

    System.out.println("ok");

    }

    在这段程序中,if语句后面有“;”,意味着if判断后,并没有执行任何事情就结束了,而后面的大括号里的内容会在if语句执行后顺序执行,也就是说无论是否满足条件都会执行。注意大括号本身没有什么作用

  • 大数据PMP
    2018-06-20 02:17:28

    谢谢大家帮忙解答,一起加油努力!!!

  • 大数据PMP
    2018-06-20 02:17:25

    谢谢大家帮忙解答,一起加油努力!!!

  • 水不要鱼_
    2018-06-18 20:24:10

    加了分号,if (mashuo % 3 != 0); 就变成了 if (mashuo % 3 != 0) {} ,和下面的代码就没有关系了

    {

        sum = sum + mashuo;

    }

    就变成了代码块,不管 if 条件是否满足都会执行

    大数据PMP

    嗯嗯嗯, 对哒,说的没错!!!

    2018-06-20 02:18:31

    共 1 条回复 >

  • 不会太久
    2018-06-18 13:11:00

    if语句如果只有一句话,花括号可以省略

    if(XXX){XXX;}写法等同于  if(XXX)XXX ;

    if (mashuo % 3 != 0);  这样写等同于if (mashuo % 3 != 0){;}

    大数据PMP

    谢谢啦,理解了,一起加油哈!~

    2018-06-20 02:18:16

    共 1 条回复 >

  • 不sa羊
    2018-06-17 21:32:37

    加了分号if语句就没有意义了,变成1到100累加了

    大数据PMP

    谢谢您!!!我理解了!!!

    2018-06-20 02:17:54

    共 1 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165178 学习 · 17581 问题

查看课程

相似问题