集合 ArrayList的增删改查

集合:存储元素的容器,并且为我们提供规范化的管理
数组:String[] int[] short[] Object[];
为什么拥有了数组,还使用集合?
因为集合对容器进行了很多规范化的管理:
1. 运用数组:
a. int[] arr=new int[10],当用到第十一个元素时,则会越界,不得不扩容,无论new多大的数组,总有不够用的时候,则需要循环性的扩容
b.get arr[index] if(index>0 &&index 运用集合:get(inddex)

2.数组:引用类型 普通类型
集合: 只能够存放 引用类型 在集合中要存储int需要输入Integer 同理得boolean–>Boolean

关于ArrayList的增删改查:

package com.tulun.collection;
import java.util.ArrayList;
import java.util.Iterator;

public class ArrayListTest {
    public static void main(String[] args) {
        //jdk
        ArrayList arrayList = new ArrayList<>();
        //加上Integer之后   你的ArrayList只能存放Interger类型的数据
        //**增删改查**


        //**增加**
        for (int i = 0; i < 10; i++) {
            arrayList.add(i+"aa");//增加0~9
        }
       
       
        //**查询**
        //index
        System.out.print(arrayList.get(3));
        System.out.println();


        //**遍历**   所有的数据都会查询出来
        for (int i = 0; i < 10; i++) {
            System.out.print(arrayList.get(i) + " ");
        }
        System.out.println();
        //通过foreach  语句  遍历
        for (String a : arrayList) {
            System.out.print(a + " ");
        }
        System.out.println();
        //迭代器模式 方法遍历  遍历的一个工具
        Iterator aLIterator = arrayList.iterator();
        while (aLIterator.hasNext()) {//在这判断是否还有下一个元素
            String value = aLIterator.next();//通过next 去获取下一个元素
            System.out.print(value + " ");
        }
        System.out.println();
      

         //**删除**
        arrayList.remove("3aa");//传具体元素删除
        arrayList.remove(3);//传下标删除
        for (String a : arrayList) {
            System.out.print(a + " ");
        }
        System.out.println();


        //**改   改变原有的值**
        arrayList.remove(3);//3号下标的元素删掉
        arrayList.add(3,"2bb");//又在3号下标的位置    增加一个元素
        for (String a : arrayList) {
            System.out.print(a + " ");
        }
       System.out.println();
       arrayList.set(3,"2cc");//通过下标直接修改元素
       for (String a : arrayList) {
         System.out.print(a + " ");
        }
       System.out.println();


       //**判断元素是否存在**
      boolean contains = arrayList.contains("0aa");
      System.out.println(contains);
    }
}



运行结果:
3aa
0aa 1aa 2aa 3aa 4aa 5aa 6aa 7aa 8aa 9aa
0aa 1aa 2aa 3aa 4aa 5aa 6aa 7aa 8aa 9aa
0aa 1aa 2aa 3aa 4aa 5aa 6aa 7aa 8aa 9aa
0aa 1aa 2aa 5aa 6aa 7aa 8aa 9aa
0aa 1aa 2aa 2bb 6aa 7aa 8aa 9aa
0aa 1aa 2aa 2cc 6aa 7aa 8aa 9aa
true

批量的操作

package com.tulun.collection;
import java.util.ArrayList;
import java.util.Iterator;


public class ArrayListTest {
    public static void main(String[] args) {
     
        ArrayList alist = new ArrayList<>();
        ArrayList blist = new ArrayList<>();
        for(int i = 0;i<10;i++){//0~9
            alist.add(i);
        }
        for(int i = 0;i<10;i++){//5~14
            blist.add(i+5);
        }
        //批量添加
        alist.addAll(blist);
//        0 1 2 3 4 5 6 7 8 9 5 6 7 8 9 10 11 12 13 14
//
        alist.addAll(3,blist);
        //元素的移动  将alist里面额原下标之后的元素统一后移
//        0 1 2 5 6 7 8 9 10 11 12 13 41 3 4 5 6 7 8 9
        ArrayList clist = new ArrayList<>(alist);
        //通过构造函数批量添加
//        0 1 2 3 4 5 6 7 8 9
        for(Integer a : alist){
            System.out.print(a+" ");
        }


      //批量删除


        alist.removeAll(blist);
        //在alist里面删除掉blist里面的元素
        //alist  0~9
        //blist  5~14
        //调用removeAll 之后: 0 1 2 3 4


        alist.retainAll(blist);
        //在alist里面保留blist里面的元素  求集合的交集
        //运行结果:5 6 7 8 9
        for(Integer a : alist){
            System.out.print(a+" ");
        }


       // 转成数组
        Object[] objects = alist.toArray();
        //运行结果:0 1 2 3 4 5 6 7 8 9
        for(Object a : objects){
            System.out.print(a+" ");
        }


        Integer[] arr = new Integer[alist.size()];
        //运行结果:0 1 2 3 4 5 6 7 8 9
        alist.toArray(arr);
        for(Integer a : arr){
            System.out.print(a+" ");
        }


        //转成 子  list
        List subList = alist.subList(3,6);
        //左闭右开区间
        //运行结果:3 4 5
        for(Integer a : subList){
            System.out.print(a+" ");
        }
}

你可能感兴趣的:(集合 ArrayList的增删改查)