java api接口报500_java 浅出Collection

本文以浅显易懂的方式介绍了Java Collection框架,包括List、ArrayList、LinkedList、Set、HashSet和TreeSet等核心接口和类的使用。详细阐述了它们的特点、API以及遍历方法,适合初学者学习。
摘要由CSDN通过智能技术生成

很多教程过于深入和浅出,以至于想深入的总觉得不够全面,想浅出的总觉得看起来费劲。

本人菜鸟,作知识的聚合和整理,以下简单介绍Collection的使用API以及必要的知识。

继承框架

5c845e14c1e78556f107c058d056af32.png

Collection

|-----List 有序(存储顺序和取出顺序一致),可重复

|----ArrayList ,数组队列,线程不安全,底层使用数组实现,查询快,增删慢,效率高。

|----LinkedList , 双向链表,线程不安全,底层使用链表实现,查询慢,增删快,效率高。

|----Vector ,数组队列,线程安全,底层使用数组实现,查询快,增删慢,效率低。

|-----Set 不可重复

|----HashSet,HashMap的keys线程不安全,不保证元素顺序,允许null值

|----TreeSet , TreeMap的keys,线程不安全,保证元素顺序,允许null值

iterator接口

Collection都支持一个iterator(),该方法返回一个迭代器,用于遍历Collection中元素

boolean	hasNext()
	//如果仍有元素可以迭代,则返回 true。
E next()
	//返回游标的下一个元素,同时游标向后移动一位。
void remove()
	//从迭代器指向的集合中移除迭代器返回的最后一个元素。

使用示例

Collection<String> c=。。。。
Iterator<String> i=c.iterator();
while(i.hasNext()){
    String s=i.next();//s是使用next()返回的元素
    i.remove();//remove方法会删除使用next()方法返回 的元素,也就是s
}

ListIterator接口

继承于Iterator,List类型对象有ListIterator()方法

void hasPrevious()
//判断游标前面是否有元素;
Object previous()
//返回游标前面的元素,同时游标前移一位。游标前没有元素就报 java.util.NoSuchElementException 的错,所以使用前最好判断一下;
int nextIndex()
//返回游标后边元素的索引位置,初始为 0 ;遍历 N 个元素结束时为 N;
int previousIndex()
//返回游标前面元素的位置,初始时为 -1,同时报 java.util.NoSuchElementException 错;
void add(E)
//在游标 前面 插入一个元素
void set(E)
//更新调用 next() 或者 previous() 返回 的元素。
注意,当没有迭代,也就是没有调用 next() 或者 previous() 直接调用 set 时会报 java.lang.IllegalStateException 错;

注意事项

  • 增加了双向访问以及修改的功能
  • set和add都是针对游标的前一位置
  • hasPrevious与previous绑定使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值