编程技巧规范

1.把字符串常量放在前面

通常把字符串常量放在比较函数equals()比较项的左侧来防止偶然的NullPointerException.

//Bad

if(s1.equals("liner")){.........}

//Good

if("liner".equals(s1)){..........}

这样毫无疑问的,把一种表达方式转换成另一种更好的表达方式,并不会失去什么。只要我们的Options是真实存在的(java8中optional是对可以为空的对象进行封装的)。

2.不要相信早期的JDK  APIs

String[] files=files.list

if(files!=null){

for(int i=0;i<files.length;i++){

..............   

       }

}

"如果抽象路径名表示的不是一个目录,那么这个方法返回null.否则返回一个字符串数组,其中每个字符串表示当前目录下的一个文件或目录"

这样,最好加上判空检查,以确保正确性.

if(file.isDirectory){

String[] files=list.files;

if(files!=null){

for(int i=0;i<files.length;i++){

......

                    }

            }

}

3.不要相信-1

javadoc中关于String.indexof()的早期描述是这样的:

“字符在字符序列中第一次出现的位置将作为结果[被返回]”,如果字符不存在则返回-1.

所以-1就可以理所当然被拿来用

//Bad

if(String.indexof(character)!=-1){............}

//Good

if(Strin.indexof(charactor)>=0){..............}

4.避免意外的赋值

(假设这是javascript)

//oops

if(variable=5){...........}

//Better(beacause causes an error)

if(5=variable){............}

//Intent(remeber. Javascript:===)

if(5===variable){...........}

如果你的表达式中有常量,将它放在等式左边。这样当你打算在添加一个=时,不容易出错

5.检查null和长度

不管什么时候你有一个集合、数组或其他的,确保它存在且不为空

//Bad

if(array.length>0){..............}

//Good

if(array!=null&&array.length>0){.............}





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值