java代码规范问题总结
1.没有总是检查ResultSet结果对象
解决方案是通过if判断ResultSet结果是有有元素,常用条件是ResultSet结果的next,previous,first,last是否有返回元素
先进行判空,在检测其他的数据
if(ResultSet.next !=null || !ResultSet.next.equal("")){}
2.try-catch模块的不完整性
解决方案是完整的try语句块和catch语句块,如果你觉得没必要完整,那就没必要用try-catch;在catch语句块中捕捉异常,常用的是e.printStackTrace();
3.多于的圆括号
出现这个问题的原因主要是对语句块的执行过程不了解,于是就有添加圆括号来避免出错;此举纯属多于
出现的地方很多,因此得具体方法具体分析
例举一例:
return ((a+b > c) ? (a+b): ((a+b < d) ? (b+c) : (a+c)));
上面这个语句是比较典型的例子,这个返回语句根本就没必要加括号
首先得理解java语言的执行步骤,java是先编译成字节码文件,因此会先对java文件进行预编译,这个过程会检测整个块的代码的完整性和逻辑是否正确,接着就是执行过程了
上面语句可以写成:return a+b > c ? a+b : a+b < d ? b+c : a+c; 这是完全没错的
在这个语句中,首先return之后的部分是作为一个整体返回的,其次在条件返回的语句中"a+b >c"是一个条件判断,也是一个整体,这个java编译器是可以检测出来的,同理a+b、a+b < d ? b+c : a+c、a+b < d、b+c、a+c都是整体
再举一例:
if((a<b)&&(b>c))
在if判断句中&&和||连接两个判断时是没有比较加括号的,理由同上
4.多余的嵌套,主要是if语句
避免不必要的嵌套,在写代码之前分析清楚逻辑关系
例:
if(a<b){
if(a>c){
return a+b;
}
}
此类就可以省去中间的if语句,而使用拼接的方法,使结构看上去更分明
改:
if(a<b && a>c){
return a+b;
}
1.没有总是检查ResultSet结果对象
解决方案是通过if判断ResultSet结果是有有元素,常用条件是ResultSet结果的next,previous,first,last是否有返回元素
先进行判空,在检测其他的数据
if(ResultSet.next !=null || !ResultSet.next.equal("")){}
2.try-catch模块的不完整性
解决方案是完整的try语句块和catch语句块,如果你觉得没必要完整,那就没必要用try-catch;在catch语句块中捕捉异常,常用的是e.printStackTrace();
3.多于的圆括号
出现这个问题的原因主要是对语句块的执行过程不了解,于是就有添加圆括号来避免出错;此举纯属多于
出现的地方很多,因此得具体方法具体分析
例举一例:
return ((a+b > c) ? (a+b): ((a+b < d) ? (b+c) : (a+c)));
上面这个语句是比较典型的例子,这个返回语句根本就没必要加括号
首先得理解java语言的执行步骤,java是先编译成字节码文件,因此会先对java文件进行预编译,这个过程会检测整个块的代码的完整性和逻辑是否正确,接着就是执行过程了
上面语句可以写成:return a+b > c ? a+b : a+b < d ? b+c : a+c; 这是完全没错的
在这个语句中,首先return之后的部分是作为一个整体返回的,其次在条件返回的语句中"a+b >c"是一个条件判断,也是一个整体,这个java编译器是可以检测出来的,同理a+b、a+b < d ? b+c : a+c、a+b < d、b+c、a+c都是整体
再举一例:
if((a<b)&&(b>c))
在if判断句中&&和||连接两个判断时是没有比较加括号的,理由同上
4.多余的嵌套,主要是if语句
避免不必要的嵌套,在写代码之前分析清楚逻辑关系
例:
if(a<b){
if(a>c){
return a+b;
}
}
此类就可以省去中间的if语句,而使用拼接的方法,使结构看上去更分明
改:
if(a<b && a>c){
return a+b;
}