java的ArrayList

基础知识:

  • ArrayList集合长度可以发生改变
  • 泛型
  • 自动装箱和自动拆箱

部分常用的接口方法

  • boolean add(E obj)
  • E add(int index,E obj)
  • E get(int index)
  • void set(int index,E obj)
  • E remove(int index)
  • int size()
  • remove(E obj)

泛型

  • 泛型即所操作的数据类型在定义时被指定为一个参数。当我们使用的时候给这个参数指定不同的对象类型,就可以处理不同的对象。

包装类型的自动装箱和自动拆箱

ArrayList集合只能存储引用数据类型,如果要使用基本数据类型,就需要使用基本数据类型的包装类

基本数据类型 对应的包装类
byte Byte
short Short
int Integer
long Long
double Double
char Character
boolean Boolean
package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<Integer> list =new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
System.out.println(list);
int two=list.get(1);
System.out.println(two);
}
}

从jdk 1.5+开始,支持自动装箱,自动拆箱

自动装箱:基本类型 --> 包装类型

自动拆箱:包装类型 --> 基本类型

boolean add(E obj)

将指定的元素追加到此列表的末尾。

package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
boolean isTrue=list.add("张三");
System.out.println(list);
System.out.println("是否添加成功:"+isTrue);
}
}

E add(int index,E obj)

在此列表中的指定位置插入指定的元素。

package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
list.add("张三");
list.add("王五");
list.add(1,"赵六");
System.out.println(list);
}
}

E get(int index)

返回此列表中指定位置的元素。

package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
list.add("张三");
list.add("王五");
list.add("赵六");
String name=list.get(1);
System.out.println(list);
System.out.println(name);
}
}

void set(int index,E obj)

用指定的元素替换此列表中指定位置的元素。

package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
list.add("张三");
list.add("王五");
System.out.println(list);
list.set(1,"赵六");
System.out.println(list);
}
}

E remove(int index)

删除该列表中指定位置的元素。

package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
list.add("张三");
list.add("王五");
list.add("赵六");
System.out.println(list);
list.remove(1);
System.out.println(list);
}
}

int size()

返回此列表中的元素数。

package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
list.add("张三");
list.add("王五");
list.add("赵六");
System.out.println(list.size());
}
}

remove(E obj)

从列表中删除指定元素的第一个出现(如果存在)。

package top.uaoie.day03.demo01;
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
list.add("张三");
list.add("王五");
list.add("王五");
list.add("赵六");
System.out.println(list);
boolean isTrue01 =list.remove("王五");
boolean isTrue02 =list.remove("不存在的人");
System.out.println("是否删除王五成功"+isTrue01);
System.out.println("是否删除不存在的人成功"+isTrue02);
System.out.println(list);
}
}

简述java的ArrayList的更多相关文章

  1. 解决springmvc报No converter found for return value of type: class java.util.ArrayList问题

    一.背景 最近闲来无事,想自己搭建一套Spring+SpringMVC+Mybatis+Mysql的环境(搭建步骤会在以后博客中给出),结果运行程序时,适用@ResponseBody注解进行返回Lis ...

  2. java 遍历arrayList的四种方法

    package com.test; import java.util.ArrayList;import java.util.Iterator;import java.util.List; public ...

  3. 初涉java库--ArrayList

    我的车就差一个轮子啦,造好轮子,我就飞上天与太阳肩并肩啦,想想都激动.什么你要自己造轮子,是不是傻,商店里不都是别人造好的吗,又好又方便,只需一点money,你没有money,那你只能做个安静的美男子 ...

  4. java集合-- arraylist小员工项目

    import java.io.*; import java.util.ArrayList; public class Emexe { public static void main(String[] ...

  5. java 16-2 ArrayList的练习2

      需求:去除集合中自定义对象的重复值(对象的成员变量值都相同 注意: 我们按照和字符串一样的操作,发现出问题了. 为什么呢? 我们必须思考哪里会出问题? 通过简单的分析,我们知道问题出现在了判断上. ...

  6. java 16-1 ArrayList的练习1

    需求: ArrayList去除集合中字符串的重复值(去掉相同的字符串) 分析: 第一种做法:创建一个新的空集合: A:创建1个具有相同字符串的集合 B:创建1个空的集合 C:遍历第一个集合里面的元素 ...

  7. Java.util.ArrayList详解

    java.util.ArrayList就是传说中的动态数组. 继承了关系,有此可看出ArrayList与list的collection的关系 public class ArrayList<E&g ...

  8. Java基础-ArrayList和LinkedList的区别

    大致区别:  1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为Lin ...

  9. java中ArrayList 、LinkList区别

    转自:http://blog.csdn.net/wuchuanpingstone/article/details/6678653 个人建议:以下这篇文章,是从例子说明的方式,解释ArrayList.L ...

随机推荐

  1. 什么时候用for循环什么时候用while循环?

    简述 for循环和while循环最大的区别在于[循环的工作量是否确定],for循环就像空房间依次办理业务,直到把[所有工作做完]才下班.但while循环就像哨卡放行,[满足条件就一直工作],直到不满足 ...

  2. 泛型 List转换成DataTable

    private DataTable listToDataTable<T>(List<T> ListItem) { //实列化DataTable对象 var dt = new D ...

  3. PSR-1之PHP代码文件必须以不带BOM的UTF-8编码

    BOM——Byte Order Mark,就是字节序标记 在UCS 编码中有一个叫做”ZERO WIDTH NO-BREAK SPACE“的字符,它的编码是FEFF.而FFFE在UCS中是不存在的字符 ...

  4. UCI 人口收入数据分析(python)

    一.项目介绍 UCI上有许多免费的数据集可以拿来练习,可以在下面的网站找寻 http://archive.ics.uci.edu/ml/datasets.html 这次我使用的是人口收入调查,里面会有 ...

  5. nginx优势,依赖,启动

      Nginx Nginx优势1.nginx将网络,磁盘及定时器等异步事件的驱动都做了非常好的封装,基于它开发将可以忽略这些事件处理的细节.2.Nginx封装了许多平台无关的接口,容器,适用于跨平台开 ...

  6. jupyter启动后,浏览器自动打开,但是显示空白

    解决办法 1.在Windows菜单中,搜索regedit,打开它.2.导航到计算机> HKEY_CLASSES_ROOT> .js> Content Type(如果没找到需要新建或直 ...

  7. C# DataTable数据类型判断

    当我们从数据中获取到数据,一般会使用 DataTable 接收,然后会遍历每行数据.由于从数据库中读取的数据可能为空,比如我们的编译代码如下: foreach (DataRow datarow in ...

  8. Spring中的beanPostProcess的作用

    BeanPostProcessor是Spring框架中非常重要的bean之一.贯穿在Spring容器中bean的初始化的整个过程. Spring中的beanpostProcess体系结构如下: 可以看 ...

  9. 【DPDK】【Multiprocess】一个dpdk多进程场景的坑

    [前言] 这是一个隐藏了近3年的问题,理论上只要用到DPDK multiprocess场景的都会遇到这个问题,具体出不出问题只能说是看运气,即使不出问题也仍然是一个风险. [场景] 我先描述一下这个问 ...

  10. cogs 1176. [郑州101中学] 月考 Map做法

    1176. [郑州101中学] 月考 ★★☆   输入文件:mtest.in   输出文件:mtest.out   简单对比时间限制:1 s   内存限制:128 MB [题目描述] 在上次的月考中B ...