Java集合总体框架

  • 哈希表

以上这些都是常用的数据结构

你往集合c1中存放数据,可能是放到数组上了。

你往集合c2中存放数据,可能是放到二叉树上了。

你使用不同的集合等同于使用了不同的数据结构。new不同的对象,就是使用不同的数据结构。如果对集合用法不了解,多去查JDK的API和百度

  • new ArrayList(); 创建一个集合,底层是数组

  • new LinkedList(); 创建一盒集合对象,底层是链表

  • new TreeSet(); 创建一个集合对象,底层是二叉树

集合的包


所有的集合类和集合接口都在Java.util包下,Java.util.*;

集合的两大类


  • 一类是单个方式存储元素,单个方式存储元素,这一类集合中超级父接口:Java.util.Collection;

  • 一类是以键值对的方式存储元素,以键值对的方式存储元素,这一类集合中超级父接口:Java.util.Map;

Iterrator it = “Collection 对象”.iterator();

it是迭代器对象

在这里插入图片描述

synchronized


  • 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象;

  • 修饰一个方法,被修饰的方法称为同步方法,其作用的范围是整个方法,作用的对象是调用这个方法的对象;

  • 修改一个静态的方法,其作用的范围是整个静态方法,作用的对象是这个类的所有对象;

  • 修改一个类,其作用的范围是synchronized后面括号括起来的部分,作用主的对象是这个类的所有对象。

Iterable是接口


  • 可迭代的,可遍历的,所有集合元素都是可迭代的,可遍历的

  • 属性:iterator()

Collection是接口


  • collection继承于Iterable

  • 所有集合继承Iterable的含义是:所有集合都是可迭代的

Iterator


  • Iterator与Collection是关联关系

  • 集合的迭代器对象

  • 属性:hashNext(),next(),remove()…

List是接口


  • List继承于Collection

  • list集合元素的特点:有序可重复,存储的元素有下标

  • 有序实际上是说存进去是这个顺序,取出来还是这个顺序,这里的顺序不是按照大小排序

  • 有序是因为list集合都有下标,下标从0开始,以1递增

ArrayList


  • ArrayList继承于List

  • ArrayList集合底层采用了数组这种数据结构

  • ArrayList集合是非线程安全的

LinkedList


  • LinkedList继承于List

  • LinkedList集合底层采用了双向链表数据结构

Vector


  • Vector继承于List

  • Vector集合底层采用了数组这种数据结构

  • Vector集合是线程安全的

  • Vector所有的方法都有syndronized关键词修饰,所以线程安全,但是效率较低,Vector用的少

Set是接口


  • Set继承于Collection

  • Set集合存储元素特点:无序不可重复

  • 无序表示存进去是这个顺序,取出来就不一定是这个顺序了

  • Set集合中元素没有下标

  • Set集合中的元素不能重复

HashSet


  • HashSet继承于Set

  • HashSet集合在new的时候,底层实际上new了一个HashMap集合

  • 向HashSet集合中存储元素,实际上是存储到了HashMap集合中

  • HashMap集合是一个哈希表数据结构

SortedSet是接口


-SortedSet集合存储元素的特点:无序不可重复,但是放在SortedSet集合中的元素可以自动排序

SortedSet是可排序集合。放到该集合中的元素是自动按照大小顺序排序

结尾

查漏补缺:Java岗 千+道面试题Java基础+全家桶+容器+反射+异常等

这不止是一份面试清单,更是一种”被期望的责任“,因为有无数个待面试者,希望从这篇文章中,找出通往期望公司的”钥匙“,所以上面每道选题都是结合我自身的经验于千万个面试题中经过艰辛的两周,一个题一个题筛选出来再次对好答案和格式做出来的,面试的答案也是再三斟酌,深怕误人子弟是小,影响他人仕途才是大过,也希望您能把这篇文章分享给更多的朋友,让他帮助更多的人,帮助他人,快乐自己,最后,感谢您的阅读。

由于细节内容实在太多啦,在这里我花了两周的时间把这些答案整理成一份文档了,在这里只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
期望公司的”钥匙“,所以上面每道选题都是结合我自身的经验于千万个面试题中经过艰辛的两周,一个题一个题筛选出来再次对好答案和格式做出来的,面试的答案也是再三斟酌,深怕误人子弟是小,影响他人仕途才是大过,也希望您能把这篇文章分享给更多的朋友,让他帮助更多的人,帮助他人,快乐自己,最后,感谢您的阅读。

由于细节内容实在太多啦,在这里我花了两周的时间把这些答案整理成一份文档了,在这里只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!

  • 14
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值