[2025.1.8 JavaSE学习]集合-1(基本概念 && Collection接口)

数组的缺点

  • 长度开始时必须指定,而且一旦指定,不能更改
  • 保存的必须为同一类型的元素
  • 使用数组进行增加元素比较麻烦(新建数组、拷贝)

集合的优点(增删改查)

  • 可以动态保存任意元素,使用比较方便
  • 提供了一系列方便的操作对象的方法:add、remove、set、get等
  • 使用集合添加、删除新元素的代码简洁明了

集合框架

  • 集合主要分为两大类:
  • Collection 单列集合
    • List
      • ArrayList
      • LinkedList
      • Vector
    • Set
      • HashSet
      • TreeSet
  • Map 双列集合
    • HashMap
    • TreeMap
    • Hashtable
    • Properties

Collection接口实现类的特点

public interface Collection<E> extends Iterable<E>
  • Collection实现子类可以存放多个元素,每个元素可以是Object
  • 有些Collection的实现类,可以存放重复的元素,有些不可以
  • 有些Collection的实现类,有些可以是有序的(list),有些可以是无序的(set)
  • Collection接口没有直接的实现子类,是通过它的子接口Set和List来实现的
  • 拿ArrayList举例,一些基本方法如下:

image

  • Tip:add和remove都是需要传入一个对象,也就是说如果add传入一个int数字,会对其进行自动装包,此刻有以下两种方法进行remove:
  • .remove(index),根据索引进行删除
  • .remove(new Integer(10)),此时也可以将第一个具有相同值的对象删除掉

Collection接口遍历方法

1、迭代器

Collection col = new ArrayList();
col.add(new MyClass(1));
col.add(new MyClass(2));
col.add(new MyClass(3));

Iterator iterator = col.iterator();

image

  • Tips:在调用iterator.next()方法之前必须要调用iterator.hasNext()进行检测,若不调用,且下一条记录无效的话,会抛出NoSuchElementException异常
while(iterator.hasNext()){
	Object next = iterator.next();
}
  • 如果遍历完全后,需要再次遍历,则需要重置迭代器:
iterator = col.iterator();

2、增强for循环

posted @ 2025-01-09 01:09  Luna-Evelyn  阅读(51)  评论(0)    收藏  举报