简述java的ArrayList
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的更多相关文章
- 解决springmvc报No converter found for return value of type: class java.util.ArrayList问题
一.背景 最近闲来无事,想自己搭建一套Spring+SpringMVC+Mybatis+Mysql的环境(搭建步骤会在以后博客中给出),结果运行程序时,适用@ResponseBody注解进行返回Lis ...
- java 遍历arrayList的四种方法
package com.test; import java.util.ArrayList;import java.util.Iterator;import java.util.List; public ...
- 初涉java库--ArrayList
我的车就差一个轮子啦,造好轮子,我就飞上天与太阳肩并肩啦,想想都激动.什么你要自己造轮子,是不是傻,商店里不都是别人造好的吗,又好又方便,只需一点money,你没有money,那你只能做个安静的美男子 ...
- java集合-- arraylist小员工项目
import java.io.*; import java.util.ArrayList; public class Emexe { public static void main(String[] ...
- java 16-2 ArrayList的练习2
需求:去除集合中自定义对象的重复值(对象的成员变量值都相同 注意: 我们按照和字符串一样的操作,发现出问题了. 为什么呢? 我们必须思考哪里会出问题? 通过简单的分析,我们知道问题出现在了判断上. ...
- java 16-1 ArrayList的练习1
需求: ArrayList去除集合中字符串的重复值(去掉相同的字符串) 分析: 第一种做法:创建一个新的空集合: A:创建1个具有相同字符串的集合 B:创建1个空的集合 C:遍历第一个集合里面的元素 ...
- Java.util.ArrayList详解
java.util.ArrayList就是传说中的动态数组. 继承了关系,有此可看出ArrayList与list的collection的关系 public class ArrayList<E&g ...
- Java基础-ArrayList和LinkedList的区别
大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为Lin ...
- java中ArrayList 、LinkList区别
转自:http://blog.csdn.net/wuchuanpingstone/article/details/6678653 个人建议:以下这篇文章,是从例子说明的方式,解释ArrayList.L ...
随机推荐
- 什么时候用for循环什么时候用while循环?
简述 for循环和while循环最大的区别在于[循环的工作量是否确定],for循环就像空房间依次办理业务,直到把[所有工作做完]才下班.但while循环就像哨卡放行,[满足条件就一直工作],直到不满足 ...
- 泛型 List转换成DataTable
private DataTable listToDataTable<T>(List<T> ListItem) { //实列化DataTable对象 var dt = new D ...
- PSR-1之PHP代码文件必须以不带BOM的UTF-8编码
BOM——Byte Order Mark,就是字节序标记 在UCS 编码中有一个叫做”ZERO WIDTH NO-BREAK SPACE“的字符,它的编码是FEFF.而FFFE在UCS中是不存在的字符 ...
- UCI 人口收入数据分析(python)
一.项目介绍 UCI上有许多免费的数据集可以拿来练习,可以在下面的网站找寻 http://archive.ics.uci.edu/ml/datasets.html 这次我使用的是人口收入调查,里面会有 ...
- nginx优势,依赖,启动
Nginx Nginx优势1.nginx将网络,磁盘及定时器等异步事件的驱动都做了非常好的封装,基于它开发将可以忽略这些事件处理的细节.2.Nginx封装了许多平台无关的接口,容器,适用于跨平台开 ...
- jupyter启动后,浏览器自动打开,但是显示空白
解决办法 1.在Windows菜单中,搜索regedit,打开它.2.导航到计算机> HKEY_CLASSES_ROOT> .js> Content Type(如果没找到需要新建或直 ...
- C# DataTable数据类型判断
当我们从数据中获取到数据,一般会使用 DataTable 接收,然后会遍历每行数据.由于从数据库中读取的数据可能为空,比如我们的编译代码如下: foreach (DataRow datarow in ...
- Spring中的beanPostProcess的作用
BeanPostProcessor是Spring框架中非常重要的bean之一.贯穿在Spring容器中bean的初始化的整个过程. Spring中的beanpostProcess体系结构如下: 可以看 ...
- 【DPDK】【Multiprocess】一个dpdk多进程场景的坑
[前言] 这是一个隐藏了近3年的问题,理论上只要用到DPDK multiprocess场景的都会遇到这个问题,具体出不出问题只能说是看运气,即使不出问题也仍然是一个风险. [场景] 我先描述一下这个问 ...
- cogs 1176. [郑州101中学] 月考 Map做法
1176. [郑州101中学] 月考 ★★☆ 输入文件:mtest.in 输出文件:mtest.out 简单对比时间限制:1 s 内存限制:128 MB [题目描述] 在上次的月考中B ...