if语句和大括号的问题

时间:2021-11-26 06:45:46
通常情况下,写代码的时候,如果一个if条件下,只有一句话,我都不会写大括号,可今天遇到的一个问题,让我理解不了。

本人基础打得不劳,请各位高手帮忙解释一下。

if语句和大括号的问题

本来是 i==0的时候才执行,结果i都=3了,还执行条件下的语句,这是为毛呢?

if下边加了一对大括号就正确执行了

22 个解决方案

#1


不是没自动编译吧
代码全贴出来

#2


无法解释,我们能做的就是,即使只有1行,也加上大括号。

#3


引用 2 楼 java2000_net 的回复:
无法解释,我们能做的就是,即使只有1行,也加上大括号。

呵呵。。代码规范。。。

建议楼猪童鞋要么代码写规范、要么贴出代码来。。。

贴代码要引用我哟。。不然我不知道你有没有贴出来。。 if语句和大括号的问题

#4


多线程,i在其他线程被修改了。呵呵

#5


这.....规范 规范  建议楼主看三本书 java编程规范   java编程思想  java数据结构

#6


引用 1 楼 go12355 的回复:
不是没自动编译吧
代码全贴出来


这几句就能说明情况了,这部分代码很简单。

clean过了,不会是那个问题的。呵呵

#7


引用 4 楼 limit111 的回复:
多线程,i在其他线程被修改了。呵呵


这是一个方法里的局部变量,不涉及多线程的。

#8


引用 2 楼 java2000_net 的回复:
无法解释,我们能做的就是,即使只有1行,也加上大括号。


哎,连老大也不知道啊, if语句和大括号的问题

#9


引用 6 楼 laolik 的回复:
引用 1 楼 go12355 的回复:不是没自动编译吧
代码全贴出来

这几句就能说明情况了,这部分代码很简单。

clean过了,不会是那个问题的。呵呵

如果是多线程就不好说了,但是只是一个main函数的话我还是想看看你的代码,满足一下我的好奇心吧

#10


我也想看看LZ的完整代码 if语句和大括号的问题

#11


你最好把你的完整代码贴上去,才能给你解决。
但是写代码一定要规范,不要嫌麻烦,对以后的维护都有帮助。

#12


你是不定义的i重名了啊

#13


LZ把全部的代码贴出来吧。如果if后面没有{}的话,条件为true的话,执行下面一行,否则跳过!

#14


在调试过程中,你修改了代码

#15


你的")"和下一行的sb之间真的什么都没有么?

#16


LZ为啥就是坚持不肯贴代码...
*保密单位吗...

#17


引用 16 楼 beiouwolf 的回复:
LZ为啥就是坚持不肯贴代码...
*保密单位吗...


你猜。

#18


是不是没有加else ,虽然代码上是不规范的。

#19


老实说,我不太相信。

#20


假装没看到。。。

#21


那个类改了一些地方,今天想重现一下那个问题,然后给大家帖一下代码来着,那个问题怎么也不出了,囧...
PS:怎么没法编辑自己的帖子呢?想在主帖中说明一下来着,只能在这说明了。

#22


分数已经分给大家了,

虽然还是没搞清楚是怎么回事

#1


不是没自动编译吧
代码全贴出来

#2


无法解释,我们能做的就是,即使只有1行,也加上大括号。

#3


引用 2 楼 java2000_net 的回复:
无法解释,我们能做的就是,即使只有1行,也加上大括号。

呵呵。。代码规范。。。

建议楼猪童鞋要么代码写规范、要么贴出代码来。。。

贴代码要引用我哟。。不然我不知道你有没有贴出来。。 if语句和大括号的问题

#4


多线程,i在其他线程被修改了。呵呵

#5


这.....规范 规范  建议楼主看三本书 java编程规范   java编程思想  java数据结构

#6


引用 1 楼 go12355 的回复:
不是没自动编译吧
代码全贴出来


这几句就能说明情况了,这部分代码很简单。

clean过了,不会是那个问题的。呵呵

#7


引用 4 楼 limit111 的回复:
多线程,i在其他线程被修改了。呵呵


这是一个方法里的局部变量,不涉及多线程的。

#8


引用 2 楼 java2000_net 的回复:
无法解释,我们能做的就是,即使只有1行,也加上大括号。


哎,连老大也不知道啊, if语句和大括号的问题

#9


引用 6 楼 laolik 的回复:
引用 1 楼 go12355 的回复:不是没自动编译吧
代码全贴出来

这几句就能说明情况了,这部分代码很简单。

clean过了,不会是那个问题的。呵呵

如果是多线程就不好说了,但是只是一个main函数的话我还是想看看你的代码,满足一下我的好奇心吧

#10


我也想看看LZ的完整代码 if语句和大括号的问题

#11


你最好把你的完整代码贴上去,才能给你解决。
但是写代码一定要规范,不要嫌麻烦,对以后的维护都有帮助。

#12


你是不定义的i重名了啊

#13


LZ把全部的代码贴出来吧。如果if后面没有{}的话,条件为true的话,执行下面一行,否则跳过!

#14


在调试过程中,你修改了代码

#15


你的")"和下一行的sb之间真的什么都没有么?

#16


LZ为啥就是坚持不肯贴代码...
*保密单位吗...

#17


引用 16 楼 beiouwolf 的回复:
LZ为啥就是坚持不肯贴代码...
*保密单位吗...


你猜。

#18


是不是没有加else ,虽然代码上是不规范的。

#19


老实说,我不太相信。

#20


假装没看到。。。

#21


那个类改了一些地方,今天想重现一下那个问题,然后给大家帖一下代码来着,那个问题怎么也不出了,囧...
PS:怎么没法编辑自己的帖子呢?想在主帖中说明一下来着,只能在这说明了。

#22


分数已经分给大家了,

虽然还是没搞清楚是怎么回事