文档章节

Java ArrayList 总结

盼
 
发布于 2017/05/11 21:51
字数 330
阅读 57
收藏 0

一.ArrayList介绍

       ArrayList是一种线性数据结构,它的底层是用数组实现的,相当于动态数组。与Java中的数组相比,它的容量能动态增长。类似于C语言中的动态申请内存,动态增长内存。

二.ArryList继承关系

        ArrayList继承于AbstractList,实现了List, RandomAccess, Cloneable, java.io.Serializable这些接口。  
实现了所有List接口的操作,并ArrayList允许存储null值。除了没有进行同步,ArrayList基本等同于Vector。在Vector中几乎对所有的方法都进行了同步,但ArrayList仅对writeObject和readObject进行了同步,其它比如add(Object)、remove(int)等都没有同步。

   public class ArrayList<E> extends AbstractList<E>  implements List<E>, RandomAccess, Cloneable, java.io.Serializable

三. 方法

         1.定义:

                1. ArrayList<String,String> arryList=new ArrayList<String,String>();

                2. List<String,String> arryList=new ArrayList<String,String>();

         2.添加  add       

                               arryList.add("我爱");

                              arryList.add("java");

                             arryList.add(1, "很");

                            //添加集合 哪一个位置

                            arryList.addAll(1, arryList);

           3.遍历     :

                           

                          1.  foreach

        for (String str : arryList) {

            System.out.println(str);

        }

                         2. for 循环

        for(int i=0;i<arryList.size();i++){

            String str=arryList.get(i);

            System.out.print(str);    

        }

                          3.iterator

                Iterator<String> iter=arryList.iterator();

        while(iter.hasNext()){

            System.out.println("Iterator==="+iter.next());

                    }

               4.长度 :

                           int num=arryList.size();

                5.获取元素

                             String str=  arrayList.get(0)// 通过下标获取元素

                            int num=arrayList.indextOf("java");//通过元素获取下标

                

             6.改

                             arryList.set(0, "妈妈");

             7.删除

                           String s= arryList.remove(1);

                           arryList.remove("java");

                          //删除 一个集合

                         arryList.removeAll(arryList1);

 

 

© 著作权归作者所有

上一篇: Map
下一篇: java 随机数 random
盼

粉丝 9
博文 88
码字总数 35377
作品 0
西安
后端工程师
私信 提问
Java入门教程之图书管理系统(由简入繁)(二)

作者:AlexTan E-mail: alextanbz@gmai.com 上一篇博客我们介绍了用数组的方式来实现图书管理系统,但是用数组实现的方式有两个主要的缺点就是:1. 查找和删除比较麻烦;2. SIZE得固定,SIZ...

AlexTan_
2017/03/23
0
0
ArrayList和LinkedList的几种循环遍历方式及性能对比分析

最新最准确内容建议直接访问原文:ArrayList和LinkedList的几种循环遍历方式及性能对比分析 主要介绍ArrayList和LinkedList这两种list的五种循环遍历方式,各种方式的性能测试对比,根据Arr...

Trinea
2013/10/31
0
1
验证ArrayList插入同样数据使用指定容量和默认容量的效率

验证ArrayList插入同样数据使用指定容量和默认容量的效率 之前在研究ArrayList源码的时候看到过一篇文章Java 8 容器源码-ArrayList里面说当ArrayList在进行插入的时候,如果容量不够那么就会...

不学无数的程序员
03/06
0
0
16-《深度拆解JVM》之Java语法糖与Java编译器

在前面的文章中,我们多次提到了 Java 语法和 Java 字节码的差异之处。这些差异之处都是通过 Java 编译器来协调的。今天我们便来列举一下 Java 编译器的协调工作。 一、自动装箱与自动拆箱 ...

飞鱼说编程
2018/11/09
0
1
重新认识java-ArrayList

重新认识java-ArrayList 源码解读 的声明: 通过继承和实现关系,可以看出继承自抽象类,实现了接口, , , . RandomAccess接口 从的声明中可以看到,这只是一个类声明,没有函数和成员变量,那...

hgfgoodcreate
2016/03/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring系列教程八: Spring实现事务的两种方式

一、 Spring事务概念: 事务是一系列的动作,它们综合在一起才是一个完整的工作单元,这些动作必须全部完成,如果有一个失败的话,那么事务就会回滚到最开始的状态,仿佛什么都没发生过一样。...

我叫小糖主
43分钟前
4
0
CentOS 的基本使用

1. 使用 sudo 命令, 可以以 root 身份执行命令, 必须要在 /etc/sudoers 中定义普通用户 2. 设置 阿里云 yum 镜像, 参考 https://opsx.alibaba.com/mirror # 备份mv /etc/yum.repos.d/CentO...

北漂的我
昨天
2
0
Proxmox VE技巧 移除PVE “没有有效订阅” 的弹窗提示

登陆的时候提示没有有效的订阅You do not have a valid subscription for this server. Please visit www.proxmox.com to get a list of available options. 用的是免费版的,所以每次都提示......

以谁为师
昨天
3
0
Java设计模式之外观模式(门面模式)

什么是外观模式   外观模式(Facade),他隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个统一的访问接口...

须臾之余
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部