[Java][单列集合具体操作]以ArrayList为例讲解“增”“删”“查”“改”操作

我们来研究List系列的集合 List相较于set 优势在于:
1.有序的 2.有索引的 3.可重复的 这里最关键的是2.有索引的:因为这点我们可以做更多拓展性的操作
List是Collection中的一种 Collection中的方法List都继承了
索引拓展出的方法 是
add(索引位置,元素)增
remove(索引位置):删除指定索引处的元素
set(索引位置,元素)修改指定索引上的元素
get(索引位置)获得索引上的元素

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

public class Main{
    public static void main(String[] args){
        //我们来研究List系列的集合 List相较于set 优势在于:
        //1.有序的 2.有索引的 3.可重复的 这里最关键的是2.有索引的:因为这点我们可以做更多拓展性的操作
        //List是Collection中的一种 Collection中的方法List都继承了
        //索引拓展出的方法 是
        // add(索引位置,元素)增
        // remove(索引位置):删除指定索引处的元素
        // set(索引位置,元素)修改指定索引上的元素
        // get(索引位置)获得索引上的元素

        //1.创建一个集合

        List list = new ArrayList<>();//list是一个接口 我们不能创建接口的对象
        list.add("aaa");
        list.add("bbb");
        list.add("ccc");

        //2.这个1索引实际上是第二个位置 原先在1索引的元素被放置在了2索引
        list.add(1,"qqq");
        //3.按照索引删除会返回元素


        /*
        我们在这里会遇到一个问题:倘若List中存在一个“1”元素 而其索引是2
        我在remove中删除岂不是很难区分?
        我们这里引入一个新的概念->装箱
        //方法在调用时 会优先调用实参和形参一致的那个方法
         */
        Integer i = Integer.valueOf(1);
        list.remove(i);
        list.remove(1);
        //3.修改索引上的元素 使用set
        list.set(0,"qqq");
        //4.get方法 通过索引获取集合上的元素
        System.out.println(list.get(0));



        //按照内容删除会返回布尔值
        System.out.println(list.remove("qqq"));
        System.out.println(list);
    }
}

你可能感兴趣的:(java,list,数据结构)