黑马程序员技术交流社区
标题:
集合以及异常的问题
[打印本页]
作者:
woshihuoye
时间:
2016-6-25 22:14
标题:
集合以及异常的问题
请说出,集合的分类以及集合的异同。从底层结构,安全性以及作用方面进行分析。
请说出异常的处理方式,以及throw和thorws的异同
作者:
syinys7
时间:
2016-6-25 22:22
|--Collection(单列集合的根接口)
|--List(子接口):元素是有序的,元素可以重复。因为该集合体系有索引。
|--ArrayList:
底层的数据结构使用的是数组结构。特点:查询块,,删减较慢.
线程不安全
|--LinkedList:底层使用的链表数据结构。特点:增删速度很快,查询稍慢。
线程不安全
。
|--Vector:底层是数组数据结构。
线程安全
。被ArrayList替代了。因为效率低。
|--Set(子接口):元素是无序(存入和取出的顺序不一定一致),元素不可以重复。
|--HashSet:底层数据结构是哈希表。是
线程不安全的
。。
|--TreeSet:可以对Set集合中的元素进行排序。
|--底层数据结构是二叉树。
线程不安全
|--Map集合:该集合存储键值对。一对一对往里存。
而且要保证键的唯一性
。
|--
Hashtable:底层是哈希表数据结构,不可以存入null键null值。
该集合是线程安全的
。jdk1.0.效率低。
|--
HashMap:底层是哈希表数据结构,允许使用 null 值和 null 键,
该集合是不安全的
。将hashtable替代,jdk1.2.效率高。
|--
TreeMap:底层是二叉树数据结构。
线程不安全
。可以用于给map集合中的键进行排序。
作者:
syinys7
时间:
2016-6-25 22:25
本帖最后由 syinys7 于 2016-6-25 22:30 编辑
异常的处理方式有两种 try..catch异常捕获 和throws异常抛出.
异常捕获try..catch的格式是:
try(检测){ 有可能出现异常的
问题语句 }
catch(捕获)//这里实际上是捕获到一个异常的对象{
处理异常的语句 }
throw和throws的区别:
throws
相当于一个标识
,在方法声明后面,对外声明该方法抛出的所有异常信息,由该方法的调用者去处理..
就像是给一个烂苹果贴上"烂了"的标签
throw在方法体内,标识抛出异常对象,由方法体内处理语句..
抛出的是具体异常
,也就是一个烂掉的苹果
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2