当前位置:首页 > 行业知识 > 综合

为什么所有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程序员的不灭价值。

猜你喜欢

  • win10安全模式都进不去

    win10安全模式都进不去67人支持

    安全模式是windows操作系统的一种特殊模式,可以帮助我们解决一些系统问题,秒杀病毒。不过最近有朋友反映win10系统无法进入安全模式。其实这是一个快速启动win10系统的技巧。…

  • 短视频网赚项目必备工具:用好这

    短视频网赚项目必备工具:用好这54人支持

    随着科学技术的快速发展,信息传递得越来越快。现在我们都处在一个信息快速传递的时代。随时都有可能收到不同的信息。相比之前的文字,视频的冲击力更强,也更很容易被人接受。面…

  • 赚钱其实很容易

    赚钱其实很容易65人支持

    一、提升思维高度,降维打击未来人与人的区别就是不同物种的区别:大部分人越来越愚蠢,越来越没有价值,都是低维的人,而也有少数人进化的越来越聪明,成为高维的人。低次元的人是透明…

  • 笔记本电脑怎么复制粘贴

    笔记本电脑怎么复制粘贴60人支持

    在我们日常操作文件或文件夹时,经常会遇到需要复制一些文件或文件夹的情况。我们来分享一些常见的场景。1、场景一如果要复制的文件或文件夹源文件保存在桌面上,以文件夹为例…

  • 花呗信用额度怎么提高

    花呗信用额度怎么提高45人支持

    如今,人们的消费观念也随着时代的变化而变化。过去的人不想借钱消费,就是不好意思跟亲戚朋友借钱。现在,“借钱”对人来说并不“难”。特别是对于现在的年轻人来说,“透支消费”…

  • 做一套微信表情包多少钱?

    做一套微信表情包多少钱?166人支持

    自从微信推出表情包以来,很多人通过微信表情包赚了很多钱。起初,有些人通过微信表情包的奖励赚取了数百万元。有的人通过微信下载发送了大量的表情符号,在他们的表情符号成为现…

  • 杜卡迪696价格多少钱

    杜卡迪696价格多少钱75人支持

    没注意过,怪兽之前没装过abs防抱死制动系统。所以2014年两个monster第一次装备了这种主动安全装备,应该会引起很多更喜欢开车的两栖骑手的兴趣。无论1100还是696,标准版还是201…

  • iphone满信号呼叫失败

    iphone满信号呼叫失败94人支持

    在使用苹果iphone的过程中,你有没有遇到过手机突然打不通电话的情况?苹果iphone突然打不了电话是什么原因?什么故障会导致苹果iphone打电话失败?如果不能打电话,请排除电话是否欠…

  • 捷豹多少钱一辆最便宜

    捷豹多少钱一辆最便宜85人支持

    自从凯迪拉克ats-l降价后,捷豹xel也降价了。整个系统配备2.0t发动机供消费者选择,价格区间28.18万到41.48万元。目前捷豹xel搭载2019精英版,部分4s门店的裸车报价为23.9万元。…

  • siri你好贾维斯是什么梗?

    siri你好贾维斯是什么梗?106人支持

    siri你好。贾维斯是什么?这是什么意思?本文编辑分享siri hello jarvis梗介绍。有兴趣的朋友可以来看看。“你好贾维斯”是《复联》衍生的彩蛋。启动苹果手机里的人工智能sir…

  • 从人人车创始团队集体退出

    从人人车创始团队集体退出55人支持

    最近,曾经风平浪静、死气沉沉的二手车电商平台,再次成为业界关注的焦点。这次是大家的车闹的涟漪。法人变更,创始人退出,创始人团队离职,出售8000元人民币.各种消息,不管是真是假,…

  • 开宾馆需要多少资金?开宾馆一般多少年回本?

    开宾馆需要多少资金?开宾馆一般多少年回本?85人支持

    旅游季住过酒店的人都知道房价真的很贵。普通快捷酒店一晚200多。稍微好一点的酒店,如果前台报价低于300就要预订。所以那些热衷于商机的投资人,多年前就把目标对准了酒店业。…