Java数据结构使用总结(1)-总体介绍

集合

Java集合用于存储数量不等的对象,主要分为Set、List、Queue、Map四种体系,亦是四种接口。Set代表无序、不可重复的集合;List有序、可重复的集合;Queue代表队列类型的数据结构;Map代表具有映射关系的集合。

集合和数组的区别

  • 存储数据类型:数组可以存储基本类型数据;集合只能存储对象(对象引用)
  • 存储数量:数据长度固定;集合长度不固定

泛型:集合即一种容器。在Java5之前,对象被存进集合后会丢失对象的具体类型,导致每次取出时都需要强转;Java5增加的泛型的支持,是的集合可以记住容器中的对象类型,使得编写代码更加简洁。

集合体系结构

集合体系结构分为两类:CollectionMap。二者是Java集合框架的根接口,Map主要继承结构结构如下:


Collection接口:


说明:以上主要列出常用的集合类。

Collection接口操作方法

Collection接口的操作方法主要是增加元素、删除元素、查询元素等

增加元素

  • boolean add(Object obj)
  • boolean addAll(Collection c)

删除元素

  • boolean remove(Object obj)
  • boolean removeAll(Collection c)
  • boolean retainAll(Collection c):取当前集合和c集合的交集,其余删除
  • void clear():删除所有元素

查询元素

  • boolean contains(Object obj):判断是否包含
  • boolean containAll(Collection c):判断是否包含所有
  • Iterator iterator():获取该集合的迭代器,用于遍历集合所有元素

其他方法:

  • boolean isEmpty():判断集合是否为空
  • int size():获取集合中元素个数
  • Object[] toArray():将集合转为数组
遍历Collection集合元素

foreach迭代

import java.util.ArrayList;
import java.util.Collection;

public class CollectionTest {

    public static void main(String[] args) {
        Collection<String> c = new ArrayList();
        for (String str:c) {
            System.out.println(str);
        }
    }
}

Iterator迭代器

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class CollectionTest {

    public static void main(String[] args) {
        Collection<String> c = new ArrayList();
        Iterator<String> iterator = c.iterator();
        while (iterator.hasNext()){
            String str = iterator.next();
            iterator.remove();
        }       
    }
}

说明

  • foreach迭代过程中不能删除集合中元素,否则会导致集合索引重新排序,结果导致有些元素没有遍历到
  • 遍历集合过程中删除元素使用迭代器Iterator的remove()方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值