Java 集合①

集合

什么是集合?

概念:对象的容器,定义了对多个对象进行操作,类似于数组的功能;

与数组的区别:

  • 数组长度固定,集合长度不固定;

  • 数组可以存储基本那类型和引用类型,集合只能存储引用类型;

    处于;java.util.*;

Collection体系集合

在这里插入图片描述

接口Collection包括:List 和 Set接口;

List;

  1. ArrayList

  2. LinkedList

  3. Vector,基本被淘汰;

    三个实现类

Set:

  1. HashSet
  2. SortedSet
  3. TreeSet

Collection 父接口

特点:代表一组任意类型的对象,无序、无下表、不能重复;

方法:

  • boolean add(Object obj)//添加一个对象
  • boolean addAll(Collection c)//将一个集合中的所有对象添加到此集合中国。
  • void clear()//清空此集合中的所有对象;
  • boolean contains(Obejct o)//检查此集合是否包含该对象
  • boolean equals(Obejct 0)//检查此集合是否与该对象下相等;
  • boolean isEmpty()//判断此集合是否为空;
  • boolean remove(0bject o)//在此集中中移除o对象
  • int size()//返回此集合中的元素个数。
  • object[] toArray()//将此集合转换为数组;
package com.zhou.study.Arrary;

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

/**
 * Collection 接口的使用
 * (1)添加元素
 * (2)删除元素
 * (3)遍历元素
 * (4)判断
 * @author:Zhou_jx,
 */
public class demo01 {
    public static void main(String[] args) {
        //创建集合
        Collection collection = new ArrayList();
        //添加元素
        collection.add("apple");
        collection.add("origin");
        collection.add("watermelon");
        //输出元素个数
        System.out.println("元素个数"+collection.size());
        System.out.println(collection);
        //删除元素
        collection.remove("apple");
        System.out.println("删除后的元素个数为:"+collection.size());
        System.out.println("-------------------------------");
        //遍历集合.增强for
        for(Object object:collection){
            System.out.println(object);
        }
        //使用迭代器(迭代器专门用来遍历集合的一种方式)
        //hashNext(),没有下一个元素
        //next(),获取下一个元素
        //remove(),删除当前元素
        Iterator it = collection.iterator();
        while (it.hasNext()){
            String s = (String)it.next();
            System.out.println(s);
            //使用迭代器是,不能使用集合的方法进行修改,会有并发错误
        }
        //判断
        System.out.println(collection.contains("apple"));
        System.out.println(collection.isEmpty());
    }
}

List集合

特点:有序,有下标,元素可以重复;

package com.zhou.study.Arrary;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

/**
 * List的使用
 * 特点1有序 有下标 可以重复
 * @author:Zhou_jx,
 */
public class demo03 {
    public static void main(String[] args) {
        //先创建集合对象
        List list = new ArrayList();
        //添加元素
        list.add("苹果");
        list.add("小米");
        list.add(0,"华为");
        System.out.println("元素个数:"+list.size());
        System.out.println(list.toString());
        /*//删除元素
        list.remove("苹果");
        list.remove(0);
        System.out.println(list.toString());*/
        //遍历
        //使用for循环
        System.out.println("使用for循环;");
        for(int i=0;i<list.size();i++){
            System.out.println(list.get(i));
        }
        //使用增强for
        System.out.println("使用增强for:");
        for(Object object:list){
            System.out.println(object);
        }
        //使用迭代器
        Iterator it = list.iterator();
        System.out.println("使用迭代器:");
        while (it.hasNext()){
            System.out.println(it.next());
        }
        //使用列表迭代器
        ListIterator lis = list.listIterator();
        System.out.println("使用列表迭代器,从前往后");
        while (lis.hasNext()){
            System.out.println(lis.nextIndex()+":"+lis.next());
        }
        System.out.println("使用列表迭代器,从后往前");
        while (lis.hasPrevious()){
            System.out.println(lis.previousIndex()+":"+lis.previous());
        }
        //判断
        System.out.println(list.contains("小米"));
        System.out.println(list.isEmpty());
        
        //获取位置
        System.out.println(list.indexOf("苹果"));
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值