Java 集合 和 Iterator迭代器

*1.常用的java容器*
这里写图片描述

List接口:元素有顺序,可重复

ArrayList:以数组形式储存数据,读取速度快写入速度慢;
LinkedList:以链表形式储存数据,读取速度慢写入速度快;

Set接口:元素无顺序,不可重复

Map接口:以键值对key-value的形式保存数据,key不可以重复

*2.Iterator接口:迭代器*
所有实现Collection接口的容器都有一个iterator方法,返回一个是想Iterator接口的对象,用以方便的实现对容器内元素的遍历操作。

Iterator.hasNext( ) 判断游标右边是否有元素,有则返回true,没有则返回false。
Iterator.next( ) 返回游标右边的元素并将游标移到下一个位置。
Iterator.remove( ) 删除最近(最后)使用next()方法的元素。从迭代器指向的集合中移除迭代器返回的最后一个元素(可选操作)。每次调用 next 只能调用一次此方法。

使用举例:

 list l = new ArrayList();
 l.add("aa");
 l.add("bb");
 l.add("cc");
 for (Iterator iter = l.iterator(); iter.hasNext();) {
      String str = (String)iter.next();
      System.out.println(str);
 }
//迭代器用于while循环
 Iterator iter = l.iterator();
 //hasNext( )方法判断是否有下一个元素
 while(iter.hasNext()){
//next( ) 方法返回右边的元素并把游标移到下一个位置
      String str = (String) iter.next();
      System.out.println(str);
 }

3.Collections类:Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序、搜索以及线程安全等各种操作。
(1)Collections.sort(List )顺序排列
列表中的所有元素都必须实现 Comparable接口。

(2)Collections.shuffling( List)随机排列

(3)Collections.reverse(List)逆序排列

(4)Collections.binarySearch(List)二分法查找

4.Comparable接口:
该接口的定义:
public interface Comparable{
public int compareTo(Object o);
}

    该接口定义类的自然顺序,实现该接口的类就可以按这种方式排序.
    一般要求:e1.equals((Object)e2)和e1.compareTo((Object)e2)==0具有相同的值,这样的话我们就称自然顺序就和equals一致.
    如果数据或者List中的元素实现了该接口的话,我们就可以调用Collections.sort或者Arrays方法给他们排序.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值