黑马程序员-List集合

---------------------- android培训java培训、期待与您交流! ----------------------

集合是java中比较重要的部分,

一.集合
 1.什么是集合
  集合是一种容器, 可以用来存储对象, 和数组类似, 但最大的区别在于长度可变.
 2.什么是List
  List是集合中的一种, 元素可重复, 有存储顺序.
  List接口下的所有子类都是可重复且有序的, 我们主要使用三种: ArrayList, LinkedList, Vector
 * 3.List常用方法
  添加对象到最后:        boolean add(E e)
  添加对象到指定位置:       boolean add(int index, E e)
  通过索引删除:        E remove(int index)
  通过对象删除:        boolean remove(E e)
  设置指定位置上的元素:      E set(int index, E e)
  获取指定位置上的元素:      E get(int index)
  将一个集合中的所有元素添加到另一个集合:  boolean addAll(Collection<? extends E> c)
  获取集合的大小:        int size()
  清空集合:         void clear()
 *** 4.List的迭代
  a.由于List是有序的, 所以可以根据索引用get(int index)形式获取, 那么定义循环, 从0循环到size()-1, 每次获取一个即可
  b.List集合实现了Iterable, 可以使用iterator()方法获取迭代器, 通过迭代器的hasNext()和next()方法进行迭代
  c.只要实现了Iterable的类, 都可以使用增强for循环, 使用方式: for (类型  变量名 : 容器) { 循环体 }
  d.Vector特有的, 使用Enumeration, 方式类似Iterator, 可以使用hasMoreElements()和nextElement()方法进行迭代
 5.List接口的几个实现类
  a.ArrayList: 数组实现, 查找快, 增删慢
  b.LinkedList: 链表实现, 增删快, 查找慢
  c.Vector: 和ArrayList原理相同, 但线程安全, 效率低.
  
二.和集合相关的JDK5新特性
 * 1.增强for循环
  for (类型  变量名  : 容器) { 循环体 }
  容器长度是几就会循环几次, 每次循环时, 会将容器中的一个元素赋值给指定变量
  只要实现了Iterable接口的类都可以使用增强for循环
 * 2.泛型
  在使用集合类的时候可以在类名后面加上"<类型>", 这样做表示该集合中只能存储指定类型的数据
  集合一旦定义泛型, 其中所有方法的类型都变成了指定类型, 不论添加还是获取都会改为指定的类型
  添加泛型之后可以将以前运行时才会出现的异常转为了编译期的错误, 方便查错.
  还可以省去类型强转的麻烦, 优化了代码的结构.
 * 3.可变参数
  在函数的参数列表中, 可以使用"类型... 参数名"形式定义一个可变参数
  可变参数可以接收同一类型的0个到多个数据, 或者也可以接收一个数组, 然后自动将接收到的数据装入一个数组中, 在函数中对数组进行访问就可以得到实参对象
  可变参数只能是参数列表的最后一个参数.
  

---------------------- android培训java培训、期待与您交流! ----------------------
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值