Java基础-集合ArrayList

数组是静态的,数组被初始化后其长度就不能再改变了。ArrayList是可以动态改变大小的,ArrayList的特点在于:

  • 动态的增加和减少元素
  • 灵活的设置数组的大小。
  • 当我们不知道到底有多少个元素的时候,就可使用ArrayList。

构造方法

  • public ArrayList() ; 构造初始化为10的空列表
  • public ArrayList(Collection<? extends E> c)
    构造一个指定元素集合的列表,E只是一个标志,至于具体是什么类型,再构造的时候指定。
    补充:ArrayList类只能存放引用类型数据,不支持基本数据类型。

常用方法

增加元素到链表中

  • boolean add(Element e)
    增加指定元素到链表尾部.
  • void add(int index, Element e)
    增加指定元素到链表指定位置.
    从链表中删除元素
  • void clear()
    从链表中删除所有元素.
  • E remove(int index)
    删除链表中指定位置的元素.
  • protected void removeRange(int start, int end)
    删除链表中从某一个位置开始到某一个位置结束的元素。
    获取链表中的元素
  • E get(int index)
    获取链表中指定位置处的元素.
  • Object[] toArray()
    获取一个数组,数组中所有元素是链表中的元素.(即将链表转换为一个数组)
    修改某个元素
  • E set(int index, E element)
    将链表中指定位置上的元素替换成新元素。
    搜索元素
  • boolean contains(Object o)
    如果链表包含指定元素,返回true.
  • int indexOf(Object o)
    返回元素在链表中第一次出现的位置,如果返回-1,表示链表中没有这个元素。
  • int lastIndexOf(Object o)
    返回元素在链表中最后一次出现的位置,如果返回-1,表示链表中没有这个元素。
    检查链表是否为空
  • boolean isEmpty()
    返回true表示链表中没有任何元素.
    获取链表大小
  • int size()
    返回链表长度(链表包含元素的个数).

代码实例

 public static void ArrayListTest(){
        // public ArrayList() 创建一个空的集合
        ArrayList<String> arrayList = new ArrayList<>() ;
        // 添加元素, public boolean add(E e) 将指定元素添加到此集合的末尾
        arrayList.add("你好呀") ;
        arrayList.add("helloword") ;
        arrayList.add("我爱你中国") ;
        // 添加指定位置
        arrayList.add(1,"hello") ;
        System.out.println(arrayList);
        // 删除指定元素: public boolean remove(Object o)
        arrayList.remove("helloword") ;
        System.out.println(arrayList);
        // 删除指定位置的元素: public E remove (int index) 返回被删除的元素
        arrayList.remove(1) ;
        System.out.println(arrayList);
        // 修改指定索引处的元素,public E set(int index, E element)返回被修改的元素
        arrayList.set(1,"小贵");
        System.out.println(arrayList);
        // 获取指定位置的元素
        System.out.println(arrayList.get(0));
        // 返回集合中的元素的个数
        System.out.println(arrayList.size());
        //    输出集合
        System.out.println(arrayList);

    }

集合遍历的三种方式

public static void ArrayListPractice(){
        ArrayList<String> arrayList = new ArrayList<>() ;
        for(int i = 0 ; i < 4 ; i++){
            arrayList.add(i+"hellword") ;
        }

        System.out.println("方式一:for循环遍历ArrayList");
        for(int j = 0 ; j<arrayList.size();j++){
            System.out.println(arrayList.get(j));
        }
        System.out.println("方式二:for each遍历");
        for(String arrlist : arrayList){
            System.out.println(arrlist);
        }
        System.out.println("方式三:Iterator迭代器遍历");
        Iterator<String> iterator = arrayList.iterator() ;
        while(iterator.hasNext()) {// hasNext() 判断是否有下一个元素
            System.out.println(iterator.next());// next()放回当前元素,并指向下一个元素.
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值