A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 柳超 中级黑马   /  2014-9-1 21:58  /  1314 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一.集合的概念
1.什么是集合
  集合是一种容器, 长度可变, 可以存储任意类型的对象.
  基本数据类型也可以装入集合, 但其实内部是先自动装箱成包装类对象, 然后再存入集合的
二.集合的分类
1.Collection
    List: 可重复, 有存储顺序,有索引
   ArrayList 数组实现, 增删慢, 查找快
   LinkedList 链表实现, 增删快, 查找慢
   Vector  数组实现, 原理和ArrayList相同, 但线程安全
  Set:  不可重复,存取顺序不一致,无索引
   HashSet
   TreeSet
   LinkedHashSet
2.Map
  HashMap
  TreeMap
  Hashtable
  LinkedHashMap
三.集合的常用方法
*** 1.常用方法
  add(Object obj)    向集合中添加一个元素, 添到最后的位置
  get(int index)       获取集合中指定位置的元素
  size()             获取集合的长度
  add(int index, Object obj)  向集合中添加一个元素, 添到指定位置
  set(int index, Object obj)  把集合中指定位置的元素替换
  remove(int index)    删除集合中指定位置的元素
  remove(Object obj)   删除集合中包含的obj对象(遍历集合中的元素如果传入的元素equals某个元素就调用remove方法,注意:角标要--)
*** 2.迭代集合
  a.for循环:  从0循环到集合的size()-1, 每次获取其中一个
  b.迭代器:    调用iterator()方法获取迭代器, 使用hasNext()判断是否包含下一个元素, 使用next()获取下一个元素
  c.增强for循环:  for (类型 变量名 : 容器) { 循环体 } 容器中有多少个元素就执行多少次循环体, 每次循环变量指向容器中不同的元素
*   3.迭代时删除的问题
  a.for循环:   删除时由于后面的元素会向前移动, 所以删除之后循环变量要--
  b.迭代器:    要删除元素时必须使用Iterator中的remove()否则会抛出异常
  c.增强for循环:  不能删除

评分

参与人数 1技术分 +1 收起 理由
格子、 + 1

查看全部评分

3 个回复

倒序浏览
不够精细吗
回复 使用道具 举报
结构清晰  谢谢分享
回复 使用道具 举报
还能再明了一点吗骚年,不错的总结,谢谢楼主

评分

参与人数 1黑马币 +10 收起 理由
柳超 + 10 淡定

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马