经过一段时间的编码(咦,我已经经历了将近20年的编程生涯,快乐的日子总是过得很快),我们开始感谢那些好习惯。因为,你知道…
这就是人们为什么喜欢进行"防错性程序设计"的原因。偏执的习惯有时很有意义,有时则不够清晰也不够聪明,也许当你想到这样写的人的时候还会觉得有点怪异。下面是我列出的的个人感觉最有用而又偏执的 10 项 Java 编程技巧。请看:
1. 把字符串常量放在前面
通过把字符串常量放在比较函数equals()
比较项的左侧来防止偶然的 NullPointerException
从来都不是一个坏主意,就像这样:
1 2 3 4 5 | // Bad if (variable.equals( "literal" )) { ... } // Good if ( "literal" .equals(variable)) { ... } |
这是毫无疑问的,把一种表达式转换成另一种更好的表达式,并不会失去什么。只要我们的Options是真实存在的(Java 8中 Optional是对可以为空的对象进行的封装),不是吗?讨论一下…
2. 不要相信早期的JDK APIs
Java刚出现的时候,编程一定是件很痛苦的事。那时的API仍然不够成熟,你可能曾经遇到过这样一段代码:
1 2 3 4 5 6 7 8 | String[] files = file.list(); // Watch out if (files != null ) { for ( int i = 0 ; i < files.length; i++) { ... } } |
看起来很奇怪对吗?也许吧,但是看看这个Javadoc:
"如果抽象路径名表示的不是一个目录,那么这个方法返回null。否则返回一个字符串数组,其中每个字符串表示当前目录下的一个文件或目录。"
是的,最好再加上判空检查,以确保正确:
1 2 |
Read full article from 偏执却管用的10条Java编程技巧 - ImportNew
No comments:
Post a Comment