Collection类、List类/Iterator类、

一、Collection类:
Collection是集合的接口,是用来保存一组数据的结构。
Collection 下面有两个子接口:List 和 Set,List和Set最重要的区别是,List可以重复存放同一个元素,而Set集合不行。 所以List是可重复集,Set是不重复集。 List是有序集,可通过索引使用元素。Set是无序集。
Collection 定义的集合方法:
 int size():集合的长度,集合中包含的元素数量。
 boolean isEmpty():集合是否是空,这里指集合中是否有元素
 boolean contains(Object o):判断给定的元素是否被包含在集合中
 void clear():清空集合
 boolean add(Object o),向集合中添加元素o,实际上该方法的参数类型是泛型。调用add方法对集合产生了变化则返回true.
 boolean remove(Object o),从集合中将给定的元素删除,  若删除了一个元素则返回true.
 boolean addAll(Collection c),将给定的集合中的所有元素添加到当前集合中
 boolean removeAll(Collection c)
 Iterator iterator();返回用于遍历该集合的迭代器.
二、List类:
List类也是一个接口,它的下面有两个实现类:ArrayList集合和LinkedList集合。 
ArrayList的内部就是使用数组实现的,只是该数组会自动的扩容和维护。
        string toString()方法:[元素1.toString(),元素2.toString(),....],调用元素的toString()方法。
        boolean contains(object o)方法:将给定的元素与集合中的每个元素进行equals()比较,这个equals()就是给定元素的equals()方法。如果包含则返回true.
         boolean remove(object o)方法:删除给定的元素。给定的元素会依次和每个元素进行equals()比较,删除掉第一个比较结果为true的元素。列表有更改则返回true.
Iterator迭代器:是一个接口,迭代器是通过集合的iterator()方法获取的。 每个集合都有该方法,用于返回能够遍历当前集合的迭代器, 迭代器要本着先问后取的原则去遍历集合,迭代器的三个方法:
 boolean hasNext():询问迭代器当前集合是否还有元素
Object next():向迭代器获取当前集合的这个元素。
void remove():删除集合中当前这个元素

public class TestIterator {
  public static void main(String[] args){
   List list = new ArrayList();
   list.add("1");
  list.add("#");
   list.add("2");
   list.add("#");
   list.add("3");
   list.add("#");
   list.add("4");
   Iterator it = list.iterator();//这里返回的it迭代器是专门用来迭代当前集合的
   while(it.hasNext()){

  String info = (String)it.next();

/*取,造型,因为没有声明泛型,获取元素的时候,获取的都是object,若想转换为实际的类,需要造型。这里造型前要


判断,否则可能出现classCastExcepption,类造型异常,通常情况下,集合中存放一种元素。
    if("#".equals(info)){
     it.remove();//将刚才next()迭代的元素从集合中删除
    /*迭代器在迭代的过程中不能对该集合的元素做变动的操作,list.remove()这样的操作在此是不允许的。

* 只有迭代器本身可以删除
     * 迭代器必须遵从问取(删),只能问一次然后才能取一次,如果你不问就取就会有nosuchelemptException
     *迭代器取一次就会向后移动一次。
     */}
    System.out.println(info);
   }
   System.out.println(list);//[1, 2, 3, 4]
  }
}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值