转眼2018年到来了,所谓金三银四,又到了找工作的黄金季节了。那么做Java开发的你,准备好刷题了吗?千锋西安java培训班的老师搜集了大量的Java面试真题,希望能够对你有所帮助。
下面是一道基础类的题目:
List和Set比较,各自的子类比较(ArrayList,Vector,LinkedList;HashSet,TreeSet);
ArrayList,LinkedList,Vector都属于List
List:元素是有顺序的,元素可以重复因为每个元素有自己的角标(索引)
|-- ArrayList:底层的数据结构是数组结构,特点是:查询很快,增删 稍微慢点,线程不同步
|-- LinkedList:底层使用的是链表数据结构,特点是:增删很快,查询慢。
|--Vector:底层是数组数据结构,线程同步,被ArrayList代替了,现在用的只有他的枚举。
Set:元素是无序的,且不可以重复(存入和取出的顺序不一定一致),线程不同步。
|--HashSet:底层是哈希表数据结构。根据hashCode和equals方法来确定元素的唯一性
|--TreeSet:可以对Set集合中的元素进行排序(自然循序),底层的数据结构是二叉树,
也可以自己写个类实现Comparable 或者 Comparator 接口,定义自己的比较器,将其作为参数传递给TreeSet的构造函数。
Map:这个集合是存储键值对的,一对一对往里存,而且要确保键的唯一性(01,张三)这样的形式打印出来就是 01=张三
|--HashTable:底层是哈希表数据结构,不可以存入null键和null值,该集合线程是同步的,效率比较低。出现于JDK1.0
|--HashMap:底层是哈希表数据结构,可以存入null键和null值,线程不同步,效率较高,代替了HashTable,出现于JDK 1.2
|--TreeMap:底层是二叉树数据结构,线程不同步,可以用于个map集合中的键进行排序
千锋作为国内IT职业教育,一直秉承“用良心做教育”的理念,采用全程面授高品质、高成本培养模式,学科大纲紧跟企业需求,且拥有国内一体化服务,已成为深受学员信赖的IT职业教育品牌。如果你也看好IT技术行业,如果你也想要拥得,如果你也想要掌握一门专业技术,那么选择千锋将会成为你成功蜕变的一步!
千锋教育的老师在这里告诉所有学子们,西安java开发培训费用并不贵。在掌握了java开发知识并取得相关的证书之后,你将拥有一笔别人夺不走的财富。
上一篇:python是干什么用的 千锋西安Python培训助力
下一篇:千锋西安Java培训分享:一道有意思的开发面试题
入职一年多崔志波工作非常好,感谢千锋培养的人才。
周红梅,有较强的学习能力,是有发展潜力的年轻人。
郑秋浩思想灵活,能按时保质保量完成工作内容。
了解千锋动态
关注千锋教育服务号
扫码关注千锋互联
身边的移动开发导师