黑马程序员技术交流社区
标题:
if() 加大括号 和不加大括号有什么区别?
[打印本页]
作者:
墓____夜
时间:
2014-5-26 23:57
标题:
if() 加大括号 和不加大括号有什么区别?
if( ){
//内容
}
和
if()
//内容
他们之间有什么区别?
应该注意哪些问题?
作者:
屋檐下的期待
时间:
2014-5-27 00:53
加 大括号是表示 满足 小括号中条件时执行的。 而不加 大括号,则表示默认的满足条件时,执行后面的第一句话。以分号结束。
if( ){
表达式1;
表达式2;
表达式3;
表达式4;
}
表达式1,2,3,4 都会执行的。
而不加
if()
表达式1;表达式2;
表达式3;
表达式 2,3 都不会执行的。因为不是后面第一句。
作者:
hamiguadjs
时间:
2014-5-27 01:18
public static void main(String[] args) {
//关于if语句带括号和不带括号的区别
int i = 0
//带括号的if语句
if (i == 0) {
System.out.println("if语句内的第一条语句");
int x ;
x = 10;
System.out.println(x);
}
//带括号的语句在if语句为true的时候,执行条件语句中的语句,否则,不执行。
//不带括号的语句
if(i == 0)
System.out.println("if语句内的第一条语句");
int x;
x = 10;
System.out.println(x);
//以上语句中如果条件表达式是true,则只执行输出语句,而以下的语句在判断语句结束后继续执行,和if语句wuguan
if(i == 0)
int y = 1; //编译错误,因为该语句是两条 语句,即int y; y = 1;
//总结:使用无括号的条件语句只能执行第一条语句,第一条语句必须是单条语句。
}
复制代码
作者:
彭旭文
时间:
2014-5-27 01:22
简单点:有括号的话,if语句控制{}里面的所有语句,没括号的话,if语句只控制最近的一行。
例如:if(a==ture)
{
System.out.println("Hello,黑马!我来了!");
System.out.println("Welcome");
}
当条件成立时,程序会读取括号里面的两条语句。当条件不成立时,两条语句都不会读取,直接跳出if()语句块内容。
if(a==ture)
System.out.println("Hello,黑马!我来了!“);
System.out.println("Welcome");
如果没有大括号,if语句只控制System.out.println("Hello,黑马!我来了!"),当if条件成立的时候,程序会输出以上两句语句,当条件不成立的时候,程序只会输出System.out.println("Welcome")。
作者:
lvc
时间:
2014-5-27 01:25
受教了,又了解了这些细节
作者:
yuZhe_toString
时间:
2014-5-27 12:16
不加括号只运行if()后的第一句话。个人建议不要图方便,任何时候都要加上,一定要保证代码的可读性。
作者:
去过的空气
时间:
2014-5-27 13:34
加大括号就会执行大括号里面所有的代码,不加大括号就会只会执行if()下的第一句代码。
作者:
an1911
时间:
2014-5-27 13:58
如果if后面的执行语句很少或者就一句的情况下,可以省略大括号,其实就是简写,省略代码。没什么好想的。
如:
if(a>2)
System.out.println("xxxx");
和
if(a>2){
System.out.println("xxxx");
}
效果是一样的,只是上面不加大括号的代码量少而已
作者:
AntThinking_toT
时间:
2014-5-27 14:46
一句话搞定:if如果不带括号,只能执行后一条语句;带括号则执行括号里的语句块。
作者:
呀嘛咕
时间:
2014-5-27 15:11
赞赞!!!!!!!!!!!!!!!!
作者:
但愿''专注..
时间:
2014-5-27 16:41
这问题很简单,你们都回答了我想回答的,哈哈。看来这里热心人很多喔,我有什么问题也来这里提问吧
作者:
墓____夜
时间:
2014-5-27 16:54
嗯,知道了。
作者:
沐阳6011
时间:
2014-5-27 19:07
总结一下就是:
带大括号的语句根据if语句的规则在if语句为true的时候,执行大括号中的执行语句。若if语句为falut,则不执行。
不带括号的语句中如果if后的条件表达式是true,则只执行该if语句的下一条语句,且这条语句必须是单条语句。剩下的语句执行与否,与该if语句无关。
小弟也受教了。谢谢提问和所有的回答,回去一定用代码实践下结果。
作者:
ender
时间:
2014-5-28 22:32
只有一句不加 其他都要加
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2