Java 语言中十大“坑爹”功能

摘要:北京时间20191203关于【Java 语言中十大“坑爹”功能】的具体情况和说明,让www.qdzs001.com新闻频道以图文形式为您慢慢道来。

向您推荐
继续播放

作者 | 践行精神自由

责编 | maozz作为一门面向对象的编程语言,Java凭借其简单易用、功能强大的特点受到了广大编程爱好者的青睐,伴随着开源社区的推波助澜,Java语言更是席卷全球,势不可挡,在世界各地都有Java技术的从业者,它也常年高居编程语言排行榜的首位,足以表明Java的强悍与王者之风。然而,即便是如此强大的编程语言,也有很多“坑爹”的功能,稍不注意,我们就会掉入坑里,轻则遭到同事的嘲笑和鄙视,重则造成悲惨后果而不得不跑路。当然,坑爹这个词加上了双引号,因为大部分时候,都是由于我们不够熟练、违反我们的常识才造成了令人不愉快的后果。今天我们就来梳理一下Java中最“坑爹”、最违反常识的功能点,以排行榜的方式发布,以飨读者。说明一下,本文中的代码基于JDK8来编译实现。

switch必须加上break才结束对于多重分支选择,一系列的if-else-if语句会让代码的可读性变差,建议使用switch语句来代替,然而switch case中的分支判断,必须加上break语句才会中止其它case的执行,比如:int count = 1;

switch(count){

case 1:

System.out.println("one");

case 2:

System.out.println("two");

case 3:

System.out.println("three");

}

上面的代码会输出:one two three

然而,这并不是我们想要的,或者说违反了我们的常识。满足了某种条件,当然就只需要执行这种条件下的逻辑即可,其他的case应该不予理会、直接跳过,象上面这段代码,只需要输出one就行了。当然,在每个case结尾处加上break就可以达到我们期望的效果。

这个功能点稍显“坑爹”,也是初学者常犯的错误,所以它也光荣上榜,排名第10位。

逻辑运算符的“短路”现象使用逻辑运算符时,我们会遇到“短路”的现象:一旦能够确定整个表达式的值,就不会计算余下的部分了,当然,这个功能点其实是非常有用的,但对于初学者来说,可能会感觉比较惊讶,使用不当就会产生“坑爹”后果。比如下面的代码:int num = 1;

System.out.println(false && ((num++)==1));

System.out.println(num);

就会输出false和1,因为逻辑与&&的前半部分为false,不管后半部分为true还是false,整个表达式都会返回false,所以就不会再计算后面的部分了,如果把false改成true,那么后半部分就会得到执行,num也就变成2了。它在“坑爹”榜单中位列第9位。

数组下标从零开始Java程序员都清楚,数组的下标是从零开始的,比如,我们要遍历一个数组,可以采用如下的方式:int[] arr = new int[]{1,3,5,7,9};

for(int i=0;i

System.out.println("the element is:"+arr[i]);

}这跟我们日常生活中的经验是相违背的,正常情况都是从第1个元素开始计数的,特别是对于初学者来说有点难以接受,会觉得很惊讶。即使对于经验丰富的程序员来说,有些地方也需要格外注意,比如:String str = "hello world";

System.out.println(str.charAt(1));我们知道,charAt的作用是获取字符串中某个位置的字符,然而,上面的代码并不是输出第一个字符h,而是e,因为数组是从零开始计数的,这个也是比较“坑爹”啊。当然,设计者这么做的原因是考虑到了内存偏移量的因素。每次在编写这样的代码时,都需要做这样的1到0的映射和转换(熟练了就是下意识的转换),确实也有点“坑爹”,所以它也不能幸免,排在第8位。

ArrayList遍历删除时报错Talk is cheap,先上代码:public static void main(String[] args) {

List list = new ArrayList();

list.add("abc");

list.add("bc");

list.add("bc");

list.add("abcd");

list.add("abcdef");

//报错

int length = list.size();

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

if(list.get(i).equals("bc")){

list.remove(i);

}

}

}想从ArrayList中删除某个元素,于是,我们就写了上面的代码,但是它却抛出了IndexOutOfBoundsException异常,原因是ArrayList在删除元素后会重新计算数量,把list.size放在for循环中即可:for(int i=0;i

if(list.get(i).equals("bc")){

list.remove(i);

}

}当然,这种方法也存在问题,建议使用迭代器的方式来删除元素。对于不太熟练的程序员来说,有时候就会掉入这样的陷阱之中。这是排名第7的情况。

字符转成数字的坑有时候,我们想把字符直接通过类型转换变成整数,比如像下面这样:char symbol = "8";

System.out.println((int) symbol);

我们想要的结果是8,然而,上面的代码却输出了56,略显“坑爹”,具体原因参考ASCII的知识。

while循环体的“障眼法”对于while循环语句,如果你没有加上大括号,即使后面的语句挨在一起,也只会执行第一条statement,比如:int i = 0;

while(i++<3)

System.out.print("A");

System.out.print("B");上面的代码会输出:AAAB

而不是3个A、3个B,更“坑爹”的是,如果两条语句放在一行上,迷惑性会更大:

int i = 0;

while(i++<3)

System.out.print("A");System.out.print("B");上面这种写法同样是输出AAAB。所以,象这样的情况,哪怕只有一条语句,也建议加上大括号,完美避坑。

Integer类有缓存这个功能点也是面试的高频热点之一,稍不注意,也有可能被带入沟里,我们看看下面这段代码:public static void main(String[] args){

Integer a = 100;

Integer b = 100;

Integer c = 200;

Integer d = 200;

System.out.println(a==b);

System.out.println(c==d);

}

上面的代码竟然输出:

true false

这确实太出乎意料了,同样的代码,只是数值不同(而且差别不太大的样子),就产生了不一样的输出,这也太离谱了。原来,Integer中有一个静态内部类IntegerCache,在类加载的时候,它会把[-128, 127]之间的值缓存起来,而Integer a = 100这样的赋值方式,会首先调用Integer类中的静态valueOf方法,这个方法会尝试从缓存里取值,如果在这个范围之内就不用重新new一个对象了:

public static Integer valueOf(int i) {

if (i >= IntegerCache.low && i <= IntegerCache.high)

return IntegerCache.cache[i + (-IntegerCache.low)];

return new Integer(i);

}

此功能入选“坑爹”排行榜的第4名。

空方法体导致死循环如果循环的方法体为空,则会导致死循环,比如,下面的代码打印出数字1,2,3:int i = 1;

while(i<4){

System.out.println(i++);

}

如果你在敲键盘的时候,不小心在while结尾处加了一个分号(如果方法体没有加大括号,更容易产生这种情况):int i = 1;

while(i<4);{

System.out.println(i++);

}

你猜怎么着,上面的代码可以正常编译并运行,然而,它却陷入了死循环......是不是非常“坑爹”?for循环也存在类似的情况。它高居排行榜的第3位。

神奇的=+我们知道,对于类似a=a+b这样的赋值语句,有一种简写方式:a +=b,然而,如果你不小心写成了a =+ b,结果又会是什么呢?我们看看下面的代码:int i = 100;

i =+ 2; //注意,加号在后面

System.out.println(i);

上面的代码既不会输出102,也不会报错,而是输出2,这的确出乎意料,完全不是我们期望的结果,太神奇了,非常的“坑爹”。所以,它排名第2,稳居榜眼的位置。

Java注释能够识别Unicode先看看代码:public static void main(String[] args){

// \ System.out.println("Hello World!");

}

乍一看,代码都被注释掉了,当然不会输出任何东西,然而,它还是输出每个程序员都倍感亲切的Hello World,这是因为,unicode解码发生在代码编译之前,编译器将\\u样式的代码进行文本转义,即使是注释也是这样,然后\ 被转换成\n换行符,所以println代码得以正常执行。这样的功能着实“坑爹”,极其违反常识,它必须要上榜,必须要荣登状元的位置。以上就是编者总结的Java语言中十大“坑爹”的功能点,你是否认同这样的排名?你觉得有哪些功能更应该入选此榜单?欢迎后台留言讨论!


查看更多
国产富二91精品|男人桶女人肌肌下边视频|两人裸体做人爱费视频拍拍拍|ctr日本猜人游戏全集|av1642.com|XXX0K亚洲厕所撤尿|uu人体艺术|偷 拍 亚洲 欧美 卡通|pplive在线观看|欧美动漫电影|九色玫瑰在线资源|污女茄子自慰免费视频|94欧美|浪货你这里面又软又浪|嘤嘤嘤人家超想要视频|ai2ai电影网|第九色影院|久久干久久|涂涂资源库|好看的bl肉文|

实时推荐

创3学员超话排名,陈卓璇第1,姜贞羽进步大,希林娜依高退步
推荐 在线高清中文字幕电影 2020-07-05 01:20 654 6429
七月多吃这素菜,每晚炒一盘,护肝清肠排毒,2块钱炒一大盘
推荐 在线高清中文字幕电影 2020-07-05 01:20 171 3677
做焖面时,有人先蒸熟有人先煮熟,搞错的人很多,难怪粘连不入味
推荐 在线高清中文字幕电影 2020-07-05 01:20 392 2709
去农村表姐家吃饭,表姐做了农家柴火饭,这道菜一上桌,我愣住了
推荐 在线高清中文字幕电影 2020-07-05 01:20 774 2128
吃水煮鱼怕油太多?私房秘制小技巧,鱼汤乳白,麻辣酸鲜直接喝
推荐 在线高清中文字幕电影 2020-07-05 01:20 519 1240
漫威电影在佐治亚州恢复拍摄!《洛基》制作组陆续重返拍摄地点
推荐 在线高清中文字幕电影 2020-07-05 01:20 102 3386
超载重卡不按道行驶与违规变道轿车相撞 轿车报废无伤亡
推荐 在线高清中文字幕电影 2020-07-05 01:19 612 7860
4-1!C罗成历史第一人,率尤文逼近冠军,个人状态完胜梅西!
推荐 在线高清中文字幕电影 2020-07-05 01:19 264 5133
想更漂亮?减脂练腹肌外还需要练腹肌线条,4个动作塑造腹肌线条
推荐 在线高清中文字幕电影 2020-07-05 01:19 895 2920
此消彼长!卡帅为后防烦恼,上港4球击溃昆山而恒大被富力扳平
推荐 在线高清中文字幕电影 2020-07-05 01:19 259 1052
第10球,马夏尔成2020年首位各项赛事进球突破10球的英超球员
推荐 在线高清中文字幕电影 2020-07-05 01:19 714 4674
轻取天津,马布里一战两得
推荐 在线高清中文字幕电影 2020-07-05 01:19 868 2325
河北2020年普通高校招生录取新政:本一、本二录取批次合并
推荐 在线高清中文字幕电影 2020-07-05 01:19 746 6515
5折!曝曼联出损招强攻1.2亿猎物,5年+900万先搞定本人
推荐 在线高清中文字幕电影 2020-07-05 01:19 477 8761
来了来了!还记得阿根廷小妖刀吗,他要来NBA了
推荐 在线高清中文字幕电影 2020-07-05 01:19 449 2305
硬气!三大内线犯满,王汝恒咬牙坚持50分钟,山东加时险胜
推荐 在线高清中文字幕电影 2020-07-05 01:19 704 964
蔡少芬为谢娜弄发型以为会惊艳,成果令谢娜崩溃:原谅我笑出猪叫
推荐 在线高清中文字幕电影 2020-07-05 01:19 572 1977
快船“50”高光时刻:吓出勇士一身冷汗替补双雄,签二人或冲首冠
推荐 在线高清中文字幕电影 2020-07-05 01:19 880 7492
捷克有一个小镇,经过几个世纪的建设,当选世界上最美丽的小镇
推荐 在线高清中文字幕电影 2020-07-05 01:19 337 4341
20多万的沃尔沃S60来袭!人性化的配置让你满意!
推荐 在线高清中文字幕电影 2020-07-05 01:19 985 1656
金瀚贝叶上刻字听说能保存千年,谁注意他写的啥?他真是铁憨憨
推荐 在线高清中文字幕电影 2020-07-05 01:19 755 4994
夏天,遇见此花抓紧吃,扫走湿气迎三伏,加个咸蛋煮成汤,特鲜甜
推荐 在线高清中文字幕电影 2020-07-05 01:19 677 6848
才知道,做鱼香肉丝这么简单,不用过油,孩子说比饭店还好吃
推荐 在线高清中文字幕电影 2020-07-05 01:19 308 6277
二十多万的沃尔沃XC40,给你不一样的惊喜
推荐 在线高清中文字幕电影 2020-07-05 01:19 182 2612
换个姿势清蒸黄瓜鱼,肉质细腻,无刺心情更美好
推荐 在线高清中文字幕电影 2020-07-05 01:19 754 4976
“印度版 Tiktok”——Mitron TV完成2000万卢比种子轮融资
推荐 在线高清中文字幕电影 2020-07-05 01:19 584 1938
德国杯决赛视频直播:拜仁慕尼黑vs勒沃库森,拜仁剑指国内双冠!
推荐 在线高清中文字幕电影 2020-07-05 01:19 765 6448
《创造营2020》收官:成团夜太敷衍?尬聊尬唱,槽点满满
推荐 在线高清中文字幕电影 2020-07-05 01:18 964 2245
收获连胜,上海男篮105:101广州男篮
推荐 在线高清中文字幕电影 2020-07-05 01:18 674 8393
长沙县一民房发生爆炸,门被整块震出框
推荐 在线高清中文字幕电影 2020-07-05 01:18 508 707
卡特入选名人堂,真的是对大本、韦伯和比卢普斯等人的不公平吗?
推荐 在线高清中文字幕电影 2020-07-05 01:18 598 1138
库里一家远足,库里尽显男神范,库嫂瘦身成功,网友:布朗尼呢?
推荐 在线高清中文字幕电影 2020-07-05 01:18 429 6840
科创板减持细则正式发布
推荐 在线高清中文字幕电影 2020-07-05 01:18 471 6538
辽宁男篮爆发内讧,韩德君爆粗口,马丁对辽宁队失去掌控
推荐 在线高清中文字幕电影 2020-07-05 01:18 187 6559
《中餐厅4》官宣海报,赵丽颖和李浩菲同框,却完全看不出年龄差
推荐 在线高清中文字幕电影 2020-07-05 01:18 127 4595
《亲爱的挚爱的》热拍,我却在关注客串演员,粉丝一眼就认出来
推荐 在线高清中文字幕电影 2020-07-05 01:18 845 9019
周末聚餐不可错过的三道美食,简单美味、大人喜欢吃、小孩嘴更馋
推荐 在线高清中文字幕电影 2020-07-05 01:18 849 8524
龙东破门!丹尼尔森搭档董岩锋,拉尔森单欢欢登场,大连战平青岛
推荐 在线高清中文字幕电影 2020-07-05 01:17 459 4308
一场1-1让西班牙人获利好!落后倒数第4名11分,本轮不降级
推荐 在线高清中文字幕电影 2020-07-05 01:17 476 3899
曼联6000万欧先生继续爆发!9场独造11球,比肩队史2大传奇
推荐 在线高清中文字幕电影 2020-07-05 01:17 902 2166
4-1!C罗成历史第一人,率尤文逼近冠军,连续4场破门完爆梅西
推荐 在线高清中文字幕电影 2020-07-05 01:17 226 3062
1-0到1-1,武磊迎来绝境逢生!西班牙人旧将成救世主,保级队悬了
推荐 在线高清中文字幕电影 2020-07-05 01:17 529 3216
海贼王:凯多绝招雷鸣八卦封神,目前只有这两人能抗住
推荐 在线高清中文字幕电影 2020-07-05 01:16 760 7673
国内又一“悲催”古镇,商家陆续撤离几乎成空城,游客:自作自受
推荐 在线高清中文字幕电影 2020-07-05 01:16 901 2047
你不知道的维生素小知识,快来看看吧
推荐 在线高清中文字幕电影 2020-07-05 01:16 944 1863
造物片场 | 兰博基尼Huracán EVO后驱版:我是纯粹的快乐使者
推荐 在线高清中文字幕电影 2020-07-05 01:16 959 2618
巴拉圭新增46例新冠肺炎确诊病例 推迟重启全国足球联赛时间
推荐 在线高清中文字幕电影 2020-07-05 01:16 403 9341
CBA复赛后本土最佳阵容
推荐 在线高清中文字幕电影 2020-07-05 01:15 846 9513
退耕还林土涌金 皂角满枝富乡亲
推荐 在线高清中文字幕电影 2020-07-05 01:15 146 2654
新能源汽车重磅来袭,颜值与实力共存,非常炫酷
推荐 在线高清中文字幕电影 2020-07-05 01:15 175 1840
“助老扶残”进社区,呼市大庆路居委会携爱心企业送服务!
推荐 在线高清中文字幕电影 2020-07-05 01:14 551 3561
三生三世:折颜为何选择封印伏羲琴,原因有三,竟和白真有关
推荐 在线高清中文字幕电影 2020-07-05 01:14 631 8377
乘风破浪的姐姐:金晨孟佳上演咬嘴杀,郑希怡笑到直不起腰
推荐 在线高清中文字幕电影 2020-07-05 01:14 933 7191
孩子的奖惩有大学问!家长若不回避“得西效应”,容易好心办坏事
推荐 在线高清中文字幕电影 2020-07-05 01:14 131 8112
广东省发展中医药事业基金会八项举措部署落实省中医药大会精神
推荐 在线高清中文字幕电影 2020-07-05 01:13 708 7484
福州外国语学校:福建省教育厅领导来校调硏指导高考准备工作
推荐 在线高清中文字幕电影 2020-07-05 01:13 869 4978
迟到的礼物不迟到的爱!长岛“兵妈妈”为子弟兵补上第一网鲅鱼饺子
推荐 在线高清中文字幕电影 2020-07-05 01:13 986 954
济南一小区延期交房一年,违约金欠了6个月终于给了
推荐 在线高清中文字幕电影 2020-07-05 01:13 601 2142
郑州等5地将发生较强雷电活动 并伴有7级以上阵风
推荐 在线高清中文字幕电影 2020-07-05 01:13 570 1741
沅江市殡葬改革成效初显
推荐 在线高清中文字幕电影 2020-07-05 01:13 675 5616
太阳主帅:复赛后德文
推荐 在线高清中文字幕电影 2020-07-05 01:13 936 3819
拉尔森即插即用!连线郑龙+博阿滕,大连人后20分钟围攻黄海
推荐 在线高清中文字幕电影 2020-07-05 01:12 335 8884
湘乡通报一起违反中央八项规定精神典型问题
推荐 在线高清中文字幕电影 2020-07-05 01:12 326 2493
联想的R7000简评:锐龙4系处理器性价比之王?
推荐 在线高清中文字幕电影 2020-07-05 01:12 532 8036
点亮希望·让爱延续第二届安琪儿宝贝公益助孕计划启动
推荐 在线高清中文字幕电影 2020-07-05 01:11 517 1826
以人为本,传递“检爱”
推荐 在线高清中文字幕电影 2020-07-05 01:11 580 9813
煮鸡蛋时,别只用清水煮!多加1步,蛋壳一碰就掉,蛋黄嫩营养好
推荐 在线高清中文字幕电影 2020-07-05 01:11 321 8983
日本要拍爆笑版三国?桥本环奈演诸葛亮妻子
推荐 在线高清中文字幕电影 2020-07-05 01:11 461 1746
韦德16年薪资不到2亿,保罗近4亿!但韦德球鞋代言费远超后者
推荐 在线高清中文字幕电影 2020-07-05 01:10 989 7024
原创 为何看好本赛季湖人队夺冠?美媒列出关键理由,其他强队弱点明显
推荐 在线高清中文字幕电影 2020-07-05 01:10 294 4198
看到白敬亭和井柏然深夜里为单身发愁,心里也平衡了一点,网友:一直在线
推荐 在线高清中文字幕电影 2020-07-05 01:10 728 9182
郑爽看到柳岩的相亲对象时,脸上的表情太抢镜,怕是忘了有镜头吧
推荐 在线高清中文字幕电影 2020-07-05 01:10 815 6494
被神秘的三星堆文化加持的《龙虎山张天师》是怎样开了天门?
推荐 在线高清中文字幕电影 2020-07-05 01:10 804 8153
苏州姑苏八点半 相城夜经济华丽绽放
推荐 在线高清中文字幕电影 2020-07-05 01:10 736 8707
《燃烧女子的肖像》我爱你,无关身份、性别 只是因为你是你啊
推荐 在线高清中文字幕电影 2020-07-05 01:10 955 673
个人票房过100亿, 想演《功夫2》要10万, 周星驰1分钱都不要
推荐 在线高清中文字幕电影 2020-07-05 01:10 431 1812
核心!9场11球+死角定位球 有他曼联找回豪门气质
推荐 在线高清中文字幕电影 2020-07-05 01:09 816 9650
猫宝宝练习爬树技能,看到旁边猫妈的反应,网友直呼场景好熟悉
推荐 在线高清中文字幕电影 2020-07-05 01:09 103 5345
英超-青木梅开二度B费2传1射 曼联5-2逆转夺3连胜
推荐 在线高清中文字幕电影 2020-07-05 01:07 995 3305
夏天爱出汗,炖鸡汤时加入它,早餐喝了特爽,考生喜欢当水喝
推荐 在线高清中文字幕电影 2020-07-05 01:07 415 5061
原创 凌晨0点40分!C罗任意球直接破门,一脚世界波解锁两个纪录?
推荐 在线高清中文字幕电影 2020-07-05 01:06 867 9540
“点球王子”停赛,C罗机会来了,落后5球仍有望拿金靴
推荐 在线高清中文字幕电影 2020-07-05 01:06 411 6273
「跟着书记看“三重”」全市高质量发展观摩团抵达通圆共和生物科技项目
推荐 在线高清中文字幕电影 2020-07-05 01:05 240 8327
CBA热血画面!沈梓捷上演背扣后大吼10秒钟,没有观众只能自嗨
推荐 在线高清中文字幕电影 2020-07-05 01:03 474 4050
GIF:德利赫特手球送点,贝洛蒂点射助都灵扳回一城
推荐 在线高清中文字幕电影 2020-07-05 01:03 925 3398
GIF:C罗任意球直接破门,尤文主场3-1都灵
推荐 在线高清中文字幕电影 2020-07-05 01:03 124 3258
GIF:贝洛蒂打进扳平球,后因越位在先被取消
推荐 在线高清中文字幕电影 2020-07-05 01:03 893 1170
兴宁区为新办企业免费刻制印章服务项目
推荐 在线高清中文字幕电影 2020-07-05 01:02 748 5083
恒大“烫手山芋”新东家揭晓:已经离开广州,还是熟悉的方式
推荐 在线高清中文字幕电影 2020-07-05 01:02 727 3660
百年梦剧场,见证了曼联的百年荣辱兴衰
推荐 在线高清中文字幕电影 2020-07-05 01:02 632 5909
槐荫区卫健局召开“两考”卫生防疫和医疗救治业务培训会
推荐 在线高清中文字幕电影 2020-07-05 01:02 372 2363
未来尚不可知!多特新星愿意加盟曼联,但俱乐部的态度还不清楚
推荐 在线高清中文字幕电影 2020-07-05 01:02 264 1478
天津市蓟州区环境综合整治“百日会战”扮靓城乡新面貌
推荐 在线高清中文字幕电影 2020-07-05 01:02 588 6079
惨烈!双方5人犯满,全场送出70次犯规,吴轲立功山东艰难取胜
推荐 在线高清中文字幕电影 2020-07-05 01:02 729 6867
太原市晋源区:区政协召开社情民意特约信息员培训会
推荐 在线高清中文字幕电影 2020-07-05 01:01 110 4138
组工动态|不忘初心跟党走,红歌齐唱颂党恩——城关街道有个村这样给党过生日
推荐 在线高清中文字幕电影 2020-07-05 01:00 709 9617
金华开发区发布丨 关键时期创建项目怎么抓?李斌峰在推进会上提出“四个一”要求
推荐 在线高清中文字幕电影 2020-07-05 01:00 298 4337
柳泉镇多措并举夯实创卫“硬件”
推荐 在线高清中文字幕电影 2020-07-05 01:00 848 5887
吴晓斌、孟维君检查指导高考保密工作
推荐 在线高清中文字幕电影 2020-07-05 01:00 745 8852
DNF手游自动连招方法,一键操作,手残也能秀
推荐 在线高清中文字幕电影 2020-07-05 01:00 338 7440