小小的小问题!!!!!! if(true)int i=0;//-------------if(true){int i=0;}有啥区别么!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 if(true){ int i = 0; int j = 1;}//----------if(true) int i = 0;int j = 1;上面的两句都要条件成立才执行,下面的只有int i = 0;是在条件成立时执行,int j = 1;不管条件是否成立都执行 没有区别,if(true)int i=0; //单条语句//-------------if(true){int i=0; //语句组}为了清晰起见,推荐if() {}写法! if不加括号 只执行跟着的第一句话 后面的程序相当于跳出判断语句if加括号 执行完括号中的代码才会继续执行 写法上,if(表达式){ to do xxx;}这种更为易读,且不容易失误! 这个问题可没看上去那么简单哦!第一种写法在编译时会出错。因为 Java 语言规范规定局部变量的声明的作用范围是在一个块内,也可以理解为在“{ }”内,参考 Java Language Specification, 3rd ed., 14.4.2.http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.4.2根据 JSL 14.2 块语句语法规则,JLS 14.5 语句语法规则,以及 if, while, for 的语法规则,其中的语句可以不写 { },但仅限于执行语句(其中并不包括变量声明语句)。因此第一种写法是错误的,在编译时会报错。为了避免引起不必要的麻烦,不管语句只有一行还是多行,都加上 { }。 在if … else、while、do … while、for语句中,如果只有一条语句,且这条语句又是定义变量的语句,那么要加大括号,否则编译报错。 if(true)int i=0;//-------------if(true){int i=0;}其中if(true)都是条件语句 int i=0 是条件体加了{}看起来更专业,更清晰,明白了吧我就想要一点点分就行了,谢谢 if不加括号 只执行跟着的第一句话 后面的程序相当于跳出判断语句 if加括号 执行完括号中的代码才会继续执行建议用第2种做法,这样更加清晰些 谢谢火龙果 虽然不明白为什么! 至少可以理解成java 语言规范 老师也没跟我们说过 反射原理,理论题! JTable显示问题,很迷惑! 1。请帮我看看这句话到底什么意思? 请问怎么在界面上添加背景图片?? 需要帮忙 package 不起作用?请教原因。 java有没有类似.net下dataset那样的数据结构? 求类的思想问题 请问用JB8打包成EXE文件,怎么引用第三方的jar文件啊 让一个函数等待一段时间在执行怎么做??? Java如何使用多线程读取40M的文件?最好有实例 关于properties键值的问题
if(true){
int i = 0;
int j = 1;
}
//----------
if(true)
int i = 0;
int j = 1;上面的两句都要条件成立才执行,下面的只有int i = 0;是在条件成立时执行,int j = 1;不管条件是否成立都执行
if(true)
int i=0; //单条语句
//-------------
if(true){
int i=0; //语句组
}为了清晰起见,推荐if() {}写法!
if加括号 执行完括号中的代码才会继续执行
to do xxx;
}
这种更为易读,且不容易失误!
int i=0;
//-------------
if(true){
int i=0;
}
其中if(true)都是条件语句 int i=0 是条件体
加了{}看起来更专业,更清晰,明白了吧
我就想要一点点分就行了,谢谢
if加括号 执行完括号中的代码才会继续执行
建议用第2种做法,这样更加清晰些