数组,集合都是对多个数据进行存储 *** 作,简称为容器
PS:这里的存储是内存层面的存储,而不是持久化存储
数组:只能存放同一种类型的数据
,长度无法更改,只能放同一种类型的数据
一旦指定了长度,那么长度就被确定,不可以更改,删除增加效率低,无法直接判断数组的实际元素的数量,需要我们自己去写,存储为有序,可重复。
如何解决数组的缺点?
用于解决数组缺点的新的存数的数据结构—>集合
什么是集合我们有很多集合,为什么要学习这么多集合,应为不容的集合底层的数据机构不一样
将集合分为两种类型
存储方式:
一个一个数据的存储
一对一对数据的存数
colletion接口特点:不唯一,有序
- 新增:add(E e)
- 修改:
- 删除:remove(Object o),clear()
- 查看:iterator(),size()
- 判断:contains(Object o),equals(Object o),isEmpty()
public static void main(String[] args) { //接口不能创建对象:利用实现类创建 Collection col = new ArrayList(); // 集合有一个特点,只能存放引用数据类型,不能是基本数据类型, // 基本数据类型自动装箱,对应包装类 col.add(18); col.add(12); col.add(15); System.out.println(col); List list = Arrays.asList(new Integer[]{2,1,3,4,5}); col.addAll(list); System.out.println(col); col.clear(); System.out.println(col); System.out.println("集合的数量:"+col.size()); System.out.println("集合是否为空:"+col.isEmpty()); boolean remove = col.remove(15); System.out.println(col); System.out.println("是否删除成功:"+remove); Collection col2 = new ArrayList(); // 集合有一个特点,只能存放引用数据类型,不能是基本数据类型, // 基本数据类型自动装箱,对应包装类 col2.add(18); col2.add(12); col2.add(15); Collection col3 = new ArrayList(); // 集合有一个特点,只能存放引用数据类型,不能是基本数据类型, // 基本数据类型自动装箱,对应包装类 col3.add(18); col3.add(12); col3.add(15); System.out.println(col2.equals(col3));
集合有一个特点,只能存放引用数据类型,不能是基本数据类型,那我们为什么加入基本类型没有报错?
解:基本数据类型自动装箱,对应包装类
-
增强for循环
for (Object o : col) { System.out.println(o); }
-
迭代器
Iterator it = col.iterator(); while (it.hasNext()){ System.out.println(it.next()); }
迭代器简略原理:
list接口常用方法:
list接口的常用方法
- 增加:add(E e),
- 删除:clear(),remove(int index), remove(Object o)
- 修改:set(int index, E element)
- 查看:get(int index),size()
- 判断:
List list = new ArrayList(); list.add(12); list.add(5); list.add(-1); list.add(19); list.add(2); list.add("abc"); System.out.println(list); list.add(3,14); System.out.println(list); list.set(3,77); System.out.println(list); list.remove(2); //调用这个方法参数为integer的时候,调用的是参数为index的remove方法,按照喜爱表删除 System.out.println(list); list.remove("abc"); System.out.println(list); Object o = list.get(0); System.out.println(o); System.out.println("-----------"); // 遍历list集合,普通for循环 for (int i = 0; i以上就是常用方法外加迭代的是那种遍历方式
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)