作为一种面向对象的编程语言,Java以其简单易用和强大的特性受到了广大编程爱好者的青睐。它席卷全球,势不可挡。全世界都有Java技术的实践者。也是常年在编程语言排行榜中高居榜首,足以见得Java的强大和王者地位。然而,即使是如此强大的编程语言也有很多“作弊”功能。一不留神,我们就掉坑里了。至少,我们会被同事嘲笑和鄙视,最严重的是,我们将因惨剧而不得不逃跑。.当然,欺骗这个词是用双引号引起来的,因为大多数时候,是我们缺乏技巧和常识造成了不愉快的后果。今天我们就把Java中最“烂”、最违背常识的功能点整理出来,以排行榜的形式公布给读者。说明一下,本文代码是基于JDK8编译实现的。1、switch必须加break结束。对于多分支选择,一系列的if-else-if语句会使代码的可读性变差。建议改用switch语句。但是必须加上switchcase中的分支判断。只有上面的break语句会停止其他case的执行,例如:intcount=1;switch(count){case1:System.out.println("one");case2:System.out.println("two");case3:System.out.println("three");}上面的代码会输出:onetwothree然而,这不是我们想要的,或者说违反了我们的常识。如果满足某个条件,当然只需要执行这个条件下的逻辑即可。其他情况忽略不计,直接跳过。和上面的代码一样,只需要输出一个即可。当然,在每个case的最后加一个break也能达到预期的效果。Java12骚开关还能这么玩,推荐阅读这篇文章。这个功能点有点“坑爹”,也是新手常犯的错误,所以也荣登榜单,排名第10。2、逻辑运算符的“短路”现象在使用逻辑运算符时,我们会遇到“短路”现象:一旦整个表达式的值可以确定,剩下的就不用计算了。当然,这个功能点其实是很有用的,但是对于初学者来说,可能会觉得比较意外,使用不当会有“作弊”的后果。例如下面的代码:intnum=1;System.out.println(false&&((num++)==1));System.out.println(num);会输出false和1,因为逻辑与&&的前半部分为false,不管后半部分为true还是false,整个表达式都会返回false,所以后半部分不会计算。如果把false改成true,那么会执行下半部分,num会变成2up。在“坑爹”榜单中排名第9位。3、数组下标从零开始Java程序员都知道数组下标从零开始。比如我们要遍历一个数组,可以使用如下方法:int[]arr=newint[]{1,3,5,7,9};for(inti=0;i
