為什么所有java面試都會問到list、set、map?
關注:63 發布時間:2021-08-20 18:06:15
map:我不是集合,卻總要和list一起出現
“地圖收藏?它和list有什么區別?”
相信大部分java程序員都見過以上面試問題。可以說,地圖和收藏下的列表和集合這兩個界面,成為了util包中當之無愧的面試必考三劍客。
不知道從什么時候開始,和collection沒有交集的map在節目之外變成了“collection”家族的約翰斯諾。
為什么map總是要和list等一起被問到?
好像沒人想過。好像這個問題本身就有迷惑性,會讓面試官把map和set搞混,出其不意,從而泄露破綻!那你就可以被面試官冷眼冷語諷刺:“哼!辣雞!”。
集合,這不是高中的知識嗎?
java中集合的概念來源于數學,高中就學會了:
“把一些能夠確定的不同的對象看成一個整體,就說這個整體是由這些對象的全體構成的集合。”
一個大括號,一些分散的元素構成一個集合:
{1, 3, 5, 7, 9}
集合中會有元素,都是獨立的個體,不可分割。
集合接口是數學中多個元素的整體抽象,這導致了允許元素重復.的list和不能重復的set
地圖呢?雖然可以維護一對一的k-v映射,看起來是一堆元素組織在一起,但是因為鍵和值之間沒有共同的特征,所以和集合的概念有很大的不同。
面試造火箭,工作擰螺絲
好了,現在面試官好像看到面試官越來越聰明了,開始不那么執著地問地圖起源的問題,希望能給努力的求職者添堵:
“請問map的工作原理是怎樣的?”
“list的實現原理是怎樣的?”
“你在工作中有木有分析過map和set的共通之處?”
小白說:“我工作時比較常使用list.add和foreach!
面試造火箭,工作擰螺絲的戲碼在無數的java求職過程中可謂比比皆是.他們中的很多人即使進入bat等一線廠商后,仍然在默默做著重復性的機械工作,就像在流水線上擰螺絲的鉗工,隨時可以更換。
那么,為什么這些容器接口如此重要,即使工作中很少用到解釋原理,面試官還要問一個、兩個、三個呢?
許多寫業務的程序員,比如這些白人,比較常使用add和for循環,好像所有的集合都可以通過這些簡單的方法處理所有的業務場景。
數組、表、紅黑樹、哈希,這些實現層的重要概念是計算機相關領域比較重要的知識內容——數據結構與算法。
為什么列表、集合、地圖會被那么多采訪問到?換句話說,就是因為它們考驗了一個程序員對一些計算機相關知識的綜合掌握程度,甚至可以洞悉一個求職者的知識參悟性。說,“一千個哈姆雷特可以來自一千個讀者”。不同的層次會對源碼有不同的解讀,薪酬也不同。
這些重要的能力考慮不僅能反映程序員同時可以得知這些程序員理解業務的速度以及準確度,他們看待問題的角度以及一定的語言表達能力。的技術水平
一個小hashmap,雖然好用,但是在特定場景下會有不同的用法變化,比如擴容問題,比如并發問題,線程安全問題.無數小問題也可以考察一個程序員知識的廣度和全面性。
到目前為止,三劍客都是面試環節jdk的一道重要主菜.
隨著java生態系統的成熟,出現了很多的框架,比如spring、spring boot、jpa、mybatis、redis等等。這些解決各種java應用場景的框架,逐漸增加了java程序員的學習負擔,很多技術在實際工作中并沒有用到。但是由于未來找工作的可能性,或者考慮綜合技能等因素,大家都會去網上自學,也就是間接造成了很多java程序員對jdk本身研究和參悟的缺乏.
雖然廣度已經延伸到一定程度,但是隨著時間的推移,會慢慢發現深度才是一個程序員真正應該加強的方向。
我曾經在csdn的博客上看到一篇文章,說阿里大榭的技術是分享的。在談到如何學好java時,他果斷地寫了:玩好jdk。
因為jdk有太多好的創意和設計,不僅僅是list,map之類的,jdk的界面里還包含了一些設計模式。
那么我們說學習使用和類比學習,在其他很多框架源碼中,我們可能也看到了同樣的使用模式,但它是一個葫蘆
只是。
所以無論是list、set、map等高頻容器的面試題,還是其他經典的實施原則,都要認真對待,學好。
因為深度,才是一個java程序員的不滅價值。
上一篇:開土特產實體店賺錢嗎
下一篇:你沒見過的java入門
猜你喜歡
-
win10安全模式都進不去67人支持
安全模式是windows操作系統的一種特殊模式,可以幫助我們解決一些系統問題,秒殺病毒。不過最近有朋友反映win10系統無法進入安全模式。其實這是一個快速啟動win10系統的技巧。…
-
短視頻網賺項目必備工具:用好這54人支持
隨著科學技術的快速發展,信息傳遞得越來越快。現在我們都處在一個信息快速傳遞的時代。隨時都有可能收到不同的信息。相比之前的文字,視頻的沖擊力更強,也更很容易被人接受。面…
-
賺錢其實很容易65人支持
一、提升思維高度,降維打擊未來人與人的區別就是不同物種的區別:大部分人越來越愚蠢,越來越沒有價值,都是低維的人,而也有少數人進化的越來越聰明,成為高維的人。低次元的人是透明…
-
筆記本電腦怎么復制粘貼60人支持
在我們日常操作文件或文件夾時,經常會遇到需要復制一些文件或文件夾的情況。我們來分享一些常見的場景。1、場景一如果要復制的文件或文件夾源文件保存在桌面上,以文件夾為例…
-
花唄信用額度怎么提高45人支持
如今,人們的消費觀念也隨著時代的變化而變化。過去的人不想借錢消費,就是不好意思跟親戚朋友借錢。現在,“借錢”對人來說并不“難”。特別是對于現在的年輕人來說,“透支消費”…
-
做一套微信表情包多少錢?166人支持
自從微信推出表情包以來,很多人通過微信表情包賺了很多錢。起初,有些人通過微信表情包的獎勵賺取了數百萬元。有的人通過微信下載發送了大量的表情符號,在他們的表情符號成為現…
-
杜卡迪696價格多少錢75人支持
沒注意過,怪獸之前沒裝過abs防抱死制動系統。所以2014年兩個monster第一次裝備了這種主動安全裝備,應該會引起很多更喜歡開車的兩棲騎手的興趣。無論1100還是696,標準版還是201…
-
iphone滿信號呼叫失敗94人支持
在使用蘋果iphone的過程中,你有沒有遇到過手機突然打不通電話的情況?蘋果iphone突然打不了電話是什么原因?什么故障會導致蘋果iphone打電話失敗?如果不能打電話,請排除電話是否欠…
-
捷豹多少錢一輛最便宜85人支持
自從凱迪拉克ats-l降價后,捷豹xel也降價了。整個系統配備2.0t發動機供消費者選擇,價格區間28.18萬到41.48萬元。目前捷豹xel搭載2019精英版,部分4s門店的裸車報價為23.9萬元。…
-
siri你好賈維斯是什么梗?106人支持
siri你好。賈維斯是什么?這是什么意思?本文編輯分享siri hello jarvis梗介紹。有興趣的朋友可以來看看。“你好賈維斯”是《復聯》衍生的彩蛋。啟動蘋果手機里的人工智能sir…
-
從人人車創始團隊集體退出55人支持
最近,曾經風平浪靜、死氣沉沉的二手車電商平臺,再次成為業界關注的焦點。這次是大家的車鬧的漣漪。法人變更,創始人退出,創始人團隊離職,出售8000元人民幣.各種消息,不管是真是假,…
-
旅游季住過酒店的人都知道房價真的很貴。普通快捷酒店一晚200多。稍微好一點的酒店,如果前臺報價低于300就要預訂。所以那些熱衷于商機的投資人,多年前就把目標對準了酒店業。…
熱門十大品牌
- 2021年我國十大黃金品牌排行榜30999人
- 眼鏡品牌十大排行榜前10名26357人
- 十大證券公司排行榜前10名23243人
- 2021年我國雜志排行榜前10名20053人
- 我國十大雜志排行榜前10名16357人
- 2021我國十個宜居城市排行榜前11487人
- 男士褲子品牌十大排行榜前10名11186人
- 2021十大火熱電腦游戲排行榜前11057人
- 十大衛生巾品牌排行榜前十名8848人
- 我國十大襪子品牌排行榜前十名8369人