`
aijuans
  • 浏览: 1566298 次
社区版块
存档分类
最新评论

Java面试宝典题目大全--集合框架篇(附答案)

 
阅读更多

 

1、介绍JAVA集合框架的结构?

答案:

 

2、Collection框架中实现比较,要实现什么接口?
答案:Comparable/Comparator


3、ArrayList和Vector的区别?
答案:这两个类都实现了List接口,都是有序集合,即集合中的元素的位置是有顺序的,可以按位置索引号取出某个元素,并且其中的数据是允许重复的,相当于一种动态的数组。
ArrayList与Vector的区别,这主要包括两个方面:
(1)同步性:
Vector是线程安全的,也就是说是它的方法之间是线程同步的,而ArrayList是线程序不安全的,它的方法之间是线程不同步的。如果只有一个线程会访问到集合,那最好是使用ArrayList,因为它不考虑线程安全,效率会高些;如果有多个线程会访问到集合,那最好是使用Vector,因为不需要我们自己再去考虑和编写线程安全的代码。
(2)数据增长:
ArrayList与Vector都有一个初始的容量大小,当存储进它们里面的元素的个数超过了容量时,就需要增加ArrayList与Vector的存储空间,每次要增加存储空间时,不是只增加一个存储单元,而是增加多个存储单元,每次增加的存储单元的个数在内存空间利用与程序效率之间要取得一定的平衡。Vector默认增长为原来两倍,而ArrayList的增长策略在文档中没有明确规定(从源代码看到的是增长为原来的1.5倍)。ArrayList与Vector都可以设置初始的空间大小,Vector还可以设置增长的空间大小,而ArrayList没有提供设置增长空间的方法。


4、HashMap和Hashtable的区别?
答案:HashMap是Hashtable的轻量级实现,都实现了Map接口。
主要区别在于HashMap允许空的键和值,而Hashtable不允许。
HashMap是非线程安全的,而HashTable是线程安全的。因此在只有一个线程访问的情况下,效率要高于Hashtable。
HashMap把Hashtable的contains方法去掉了,改成containsValue和containsKey。因为contains方法容易让人引起误解。
Hashtable继承自Dictionary类,而HashMap继承自AbstractMap类,是Java1.2引进的Map接口的一个实现。
Hashtable和HashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。


5、List 和 Map 区别?
答案:一个是存储单列数据的集合,另一个是存储键值对的双列数据的集合,List中存储的数据是有顺序,并且允许重复;Map中存储的数据是没有顺序的,其键是不能重复的,它的值是可以有重复的。


6、List, Set, Map是否实现Collection接口?
答案:List,Set是,Map不是。


7、List、Map、Set三个接口,存取元素时,各有什么特点?
答案:List 以特定次序来持有元素,可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value值,key不能重复、value可重复。


8、两个对象值相同x.equals(y) == true,但却可有不同的hash code,这句话对不对?
答案:对。
如果对象要保存在HashSet或HashMap中,它们的equals相等,那么它们的hashCode值就必须相等。
如果不是要保存在HashSet或HashMap,则与hashCode没有什么关系了,这时候hashCode不等是可以的,例如ArrayList存储的对象就不用实现hashCode,当然,我们没有理由不实现,通常都会去实现的。


9、说出一些常用的类,包,接口,请各举5个?
常用的类:BufferedReader BufferedWriter FileReader FileWirter String Integer java.util.Date,System,Class,List ,HashMap
常用的包:java.lang java.io java.util java.sql ,javax.servlet,org.apache.strtuts.action,org.hibernate
常用的接口:Remote List Map Document NodeList ,Servlet,HttpServletRequest,HttpServletResponse,Transaction(Hibernate)、Session(Hibernate),HttpSession




更多信息请查看 java面试题  http://www.itchm.com/zhaopinqiuzhi/java_bishi_mianshi/

分享到:
评论

相关推荐

    Java面试宝典2018-最全面试资料

    《Java面试宝典2018-最全面试资料》是一部专门为Java开发者准备的面试指南,旨在帮助求职者全面了解并掌握Java领域的核心知识和技术,从而在面试中表现出色。这份资料由黑马程序员精心编纂,集合了多家知名公司的...

    Java面试宝典和2018Bat公司面试题

    本资源包"Java面试宝典和2018Bat公司面试题"包含了针对Java程序员精心整理的面试资料,旨在帮助求职者全面了解并掌握Java技术的核心知识点,以及在BAT(百度、阿里巴巴、腾讯)等知名互联网公司面试中可能遇到的问题...

    java面试宝典2017版

    通过深入学习以上知识点,配合《Java面试宝典2017版》中的实战题目和解析,求职者可以系统地提升自己的Java技能,为成功应对笔试和面试做好充分准备。同时,持续关注最新的技术发展和行业趋势,也是提升竞争力的重要...

    Java程序员面试笔试宝典-何昊pdf版

    5. **模拟面试**:提供一系列模拟面试题目及答案,帮助求职者熟悉面试流程和应对策略。 6. **简历撰写指导**:简历是求职的第一步,书中可能会有关于如何撰写一份吸引人注意的简历的建议。 综上所述,《Java程序员...

    Java面试宝典 100家大公司java笔试题汇总 等

    【Java面试宝典】是为Java开发者准备的重要学习资源,主要涵盖了各大公司Java笔试题的汇总,旨在帮助求职者在面试前进行全面的复习和技能提升。这份资料的重要性不言而喻,因为它集成了多方面的Java知识,包括但不...

    Java面试宝典--2018-1-22(1).doc

    【Java面试宝典】是为Java开发者准备的一份详尽的面试指南,旨在帮助求职者在面试中展现出扎实的Java基础知识和技术能力。这份文档涵盖了Java的各个方面,包括基础语法、面向对象、集合框架、多线程、异常处理、IO流...

    Java面试宝典集-涵盖面试题面试宝典等整体打包.zip

    再者,"Java面试宝典2018版.docx"是针对Java面试的全面指南,可能包括了Java各方面的知识点,如集合框架、IO/NIO流、多线程、网络编程、数据库连接、Spring框架等。这个文档可以帮助求职者系统性地复习和理解Java...

    java面试100题及答案面试宝典

    根据提供的文件信息,这里将基于“java面试100题及答案面试宝典”的标题、描述和部分提及的内容,来生成一系列与Java相关的面试知识点。虽然原始内容并未给出具体题目,但我们可以根据常见Java面试题目的类型来进行...

    java 面试宝典 Beta5.0

    通过对以上知识点的深入学习和理解,结合《Java面试宝典Beta5.0》中的实例和题目,求职者可以全面提升自己的Java技术水平,从容应对各种面试挑战。同时,不断跟进最新的技术和行业动态,将有助于保持竞争力,进一步...

    2020-Java工程师面试宝典-V1.0.rar

    10. **算法与数据结构**:虽然Java面试更偏重实际应用,但基础的排序算法(冒泡、插入、选择、快速、归并)、查找算法(二分查找、哈希查找)以及链表、树、图等数据结构也是常考题目。 11. **网络协议**:TCP/IP...

    android和java面试大全集

    Java面试宝典2011版-1C,Java基础部分.doc 三大框架面试题.zip 技术面试题.zip Android笔试题库 C语言终极面试宝典.doc Java笔试题目汇总.pdf Java面试宝典_2010.doc 面试全攻略100题.doc 智力题和答案.doc C语言面试...

    Java程序员面试宝典,Java面试必备PDF文件

    Java程序员面试宝典是每一位Java开发者在准备面试时不可或缺的参考资料。这份PDF文件包含了122道精心挑选的Java面试题目,旨在全面覆盖Java编程语言的核心概念、...这份Java面试宝典PDF文件无疑是准备面试的得力助手。

    码神之路Java独家面试宝典(第二版)2022最新版,大厂真题全收录,并有详细答案

    【码神之路Java独家面试宝典(第二版)2022最新版,大厂真题全收录,并有详细答案】这份资料集合了最新的大厂Java面试真题,旨在为不同薪资水平(10-50K)的Java程序员提供全方位的面试准备。第二版增加了分类处理和...

    JAVA面试宝典2018

    Java面试宝典2018版是一本专为Java开发者准备的面试指南,它涵盖了2018年及之前一段时间内Java技术领域的热点问题、核心概念以及最新的面试趋势。这本指南旨在帮助求职者在面试过程中展现出扎实的技术基础和丰富的...

    java面试题大全-葵花宝典和面试编程

    "java面试题大全-葵花宝典和面试编程"正是这样一份珍贵的资源,它汇总了培训班中频繁出现的面试题目,旨在帮助没有经验的求职者顺利通过笔试和面试。 一、基础知识 Java基础是面试中常常被考察的部分,包括但不限于...

    Java面试宝典(Java面试题目大全)2011版

    Java面试宝典2011版是一份针对Java...这些知识点只是Java面试宝典中的冰山一角,实际面试中还会涉及到异常处理、多线程、集合框架、IO流、网络编程、设计模式等多个方面。准备面试时,全面理解和掌握这些概念至关重要。

    Java面试宝典-经典

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

Global site tag (gtag.js) - Google Analytics