什么是集合?集合的相关知识

本文介绍了Java集合中的ArrayList类,包括其作为可调整大小的数据实现、泛型的使用、构造方法和添加方法。同时,文章还讨论了集合的体系结构,如Collection、List、Set和Map接口及其实现类,以及Collection接口的常用方法和遍历方式。最后,重点讲解了List接口的特点和特有方法。

集合概述:集合类的特点:提供一种存储空间可变的存储模型,存储的数据容量可以发生改变



集合类有很多先看ArrayList

ArrayList<E>:可以调整大小的数据实现,<E>:是一种特殊的数据类型,泛型。

<E>如何使用呢?

在出现的地方我们使用引用数据类型替换即可。举例:ArrayList<String>,ArrayList<Student>

ArrayList构造方法和添加方法:

public ArrayList();-------------创建一个空的集合对象

public boolean add(E e);-------------将指定元素追加到此集合的末尾

public void add(int index,E element);---------------在此集合指定位置插入指定的元素

import java.util.ArrayList;

public class demo {
    public static void main(String[] args) {
        ArrayList<String > array =new ArrayList<String>();
        array.add("hello");
        array.add("java");
        array.add("keke");
        System.out.println(array);
        array.add(3,"wang");
        System.out.println(array);
    }
}

集合如同数组一样,元素也是从零开始,但是可以在末尾添加元素,如果超过末尾添加,就会报集合越界异常

ArrayList集合常用方法:

public  boolean  remove(Object  o);--------------删除指定的元素,返回删除是否成功

public  E  remove(int  index);-----------------删除指定索引处的元素,返回被删除的元素

public  E  set(int  index,E  element);-----------------修改指定索引处的元素,返回被修改的元素

public E get(int  index);---------------------返回指定索引处的元素

public  int  size();------------------返回集合中元素的个数

import java.util.ArrayList;

public class demo1 {
    public static void main(String[] args) {
        ArrayList<String> array = new ArrayList<>();
        array.add("hello");
        array.add("word");
        array.add("xiaowang");
    
        array.remove("word");//这样直接调不会输出true
        System.out.println(array.remove("hello"));//这样会输出true
         System.out.println(array.remove("he"));//这样会输出false
        System.out.println(array);

     /*
       array.remove(1);  //这样直接调不会返回被删除的元素
        System.out.println(array.remove(2));//这样会返回被删除的元素
        System.out.println(array.remove(5));//索引越界异常
        System.out.println(array);

      */
     /*
     array.set(1,"keke"); //修改了1索引处内容,没有返回
        System.out.println( array.set(1,"keke"));//修改了1索引处内容,有返回
        System.out.println(array);

      */
     /*
     array.get(2);
        System.out.println(array.get(2)); //得到了2索引处内容
        System.out.println(array);

      */
        System.out.println(array.size());
    }
}


集合遍历格式:

for (int i=0;i<集合对象.size();i++){

集合对象.get(i)   就是指定索引处的元素

}



集合的体系结构:(红色标注的为接口,紫色标准的为实现类

集合分为:Collection(单列集合)和Map(双列集合)

Collection(单列集合):分为List(存储元素可重复集合)和Set(存储元素不可重复集合)

List(存储元素可重复集合):分ArrayList,LinkedList

Set(存储元素不可重复集合):分HashSet,TreeSet

Map(双列集合):分HashMap

这里是接口的是:Collection  ,Map   ,List , Set

这里是实现类的是:ArrayList,LinkedList,HashSet,TreeSet,HashMap



Collection集合概述和使用:

Collection是单列集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素

jdk不提供此接口的任何直接实现,它提供更具体的子接口(如List 和Set)实现

创建Collection集合对象:采用多态的方式,具体实现类ArrayList

public static void main(String[]  args){
Collection <String>  c = new ArrayList<String>();//创建对象
}


Collection集合常用方法:

boolean  add(E e);--------------添加元素          

boolean  remove(Object  o);-----------------从集合中移除指定的元素

boolean  contains(Object  o);-----------------判断集合中是否存在指定的元素

void clear;-----------------清空集合中的元素

boolean  isEmpty();---------------------判断集合是否为空

int  size();------------------集合中元素的个数,集合长度



Collection集合的遍历

Iterator:迭代器,集合的专用遍历方式

Iterator<E> iterator();返回此集合中元素的迭代器,通过集合的iterator();方法得到

因为迭代器是通过集合的iterator();方法得到,所以我们说它依赖于集合而存在

Iterator中的常用方法:

E next():返回迭代中的下一个元素

boolean hasNext:如果迭代具有更多元素,则返回true

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class demo2 {
    public static void main(String[] args) {
        Collection<String> c = new ArrayList<String >();
        c.add("xue");
        c.add("xi");
        c.add("java");
        Iterator<String>  i = c.iterator();
        while (i.hasNext()){
            String s= i.next();
            System.out.println(s);
        }
    }
}


Collection集合的使用步骤:

创建集合对象

添加元素:创建元素,添加元素到集合

遍历集合:通过集合对象获取迭代器对象,判断是否有元素,获取元素




List集合概述和特点:

List集合概述:有序集合(也称序列)用户可以精准控制列表中每个元素的插入位置,用户可以通过整数索引访问元素,并搜索列表中的元素。与Set集合不同,列表通常允许重复的元素

List集合的特点:有序:存储和取出的元素顺序一致。可重复:存储的元素可以重复

LIst集合特有方法:

void  add (int  index, E element);--------------在集合中的指定位置插入指定的元素

E  remove(int  index);-----------------删除指定索引处的元素,返回被删除的元素

E  set(int  index,E  element);-----------------修改指定索引处的元素,返回被修改的元素

E get(int  index);---------------------返回指定索引处的元素

import java.util.ArrayList;
import java.util.List;

public class demo {
    public static void main(String[] args) {
        List<String> array = new ArrayList<String>();
        array.add("hello");
        array.add("java");
        array.add("keke");
        System.out.println(array);
        array.add(3, "wang");
        array.remove(3);
        array.set(1, "xiang");
        System.out.println(array.get(0));
        System.out.println(array);

        for (int i = 0; i < array.size(); i++) {
            String s = array.get(i);
            System.out.println(s);
        }
    }
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值