国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Java List能存字符串對象嗎?

2023-03-12 16:31 作者:我有一個壞前桌  | 我要投稿

IDEA分享:idea破解篇

Navicat分享:Navicat破解篇


背景

今天在寫代碼時(shí),想到一個有趣的面試題,List<Integer>能存String對象嗎?

粗看好像問了一個Java語法相關(guān)的知識點(diǎn),其實(shí)我想考的是你對Java泛型的理解。

回答不能,那么可以說對Java泛型幾乎是沒有理解,而僅僅回答能,也是遠(yuǎn)遠(yuǎn)不夠的。

一、怎么存?

首先來講講怎么存,話不多說,直接上代碼,也不復(fù)雜大家都能看懂。

我們通過反射來實(shí)現(xiàn),最終打印輸出的內(nèi)容是[1, String],是不是有點(diǎn)匪夷所思。當(dāng)然這里需要提一點(diǎn),直接通過add方法來添加"String"字符串對象,顯然是不可行的。

或許回答不能的,這個結(jié)論應(yīng)該從這里來,市面上的idea在編寫時(shí)也都會報(bào)錯。

二、為什么能存?

關(guān)鍵點(diǎn)來了,我所期望的是面試者能提出泛型擦除,與Java的泛型只在編譯期生效。

簡單整個筆試可能出現(xiàn)的題,或許又能加深你對它的印象。

接著問,以下兩個方法能否定義在同一個類的成員方法中,

顯然也是不能的,另外有一點(diǎn)我可能還會問一下,以上代碼入?yún)⒁恢碌脑捠遣皇欠椒ǖ闹剌d?顯然也不是,方法的重載不考慮返回值


三、泛型存在的意義?

緊接著,又一個關(guān)鍵點(diǎn)來了,既然有擦除那么泛型存在的意義是?

1、泛型避免了代碼在運(yùn)行時(shí)才發(fā)現(xiàn)問題,例如上章節(jié)的例子。

2、如果都是使用Object基類替代,使用時(shí)需要強(qiáng)轉(zhuǎn),泛型減少了ClassCastException發(fā)生。

3、減少來自強(qiáng)制類型轉(zhuǎn)換的性能消耗。


轉(zhuǎn)載原作者鏈接:mp.weixin.qq.com/s/nYp_7t83LC9U4Iu3DSar4Q

更多優(yōu)秀文章,請通過一下獲取

kdocs.cn/l/cg7vXzuZCKlM



Java List能存字符串對象嗎?的評論 (共 條)

分享到微博請遵守國家法律
松江区| 连平县| 芦溪县| 西青区| 区。| 新建县| 筠连县| 江陵县| 美姑县| 碌曲县| 雷州市| 紫金县| 大荔县| 温宿县| 镇康县| 改则县| 昌都县| 长顺县| 桂东县| 林芝县| 开原市| 绵阳市| 图木舒克市| 阿图什市| 定日县| 阿勒泰市| 云和县| 张家港市| 常宁市| 兴义市| 湛江市| 南华县| 尼勒克县| 汽车| 苏尼特左旗| 杂多县| 应城市| 潢川县| 海伦市| 和龙市| 阜城县|