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. ASP.Net MVC SignalR的应用

    ASP.Net MVC SignalR的应用 最近做的一个MVC项目有个模块是要使用即时通信实现弹幕效果.既要考虑通信的实时性也要考虑服务器性能和资源消耗,所幸项目对浏览器的版本没有要求.所以我最先想 ...

  2. ArrayList数组扩容方式(基于jdk1.8)

    ArrayList无参构造函数为: public ArrayList() { this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA; } 而DEFA ...

  3. 洛谷$P4126\ [AHOI2009]$最小割 图论

    正解:网络流+$tarjan$ 解题报告: 传送门$QwQ$ $umm$最小割的判定问题$QwQ$,因为并不会做是看的题解才会的,所以也没什么推导过程直接放结论趴$QwQ$ 首先跑个最大流,然后有. ...

  4. 在 Win7、Win10 家庭版中启用组策略(gpedit.msc)

    Windows 家庭版并没有组策略,对于计算机维护.优化和设置非常不方便.使用以下批处理可以在不安装专业版.旗舰版的情况下启用组策略. 一.新建一个批处理脚本 1 @echo off 2 3 push ...

  5. Go网络文件传输

    流程分析 借助TCP完成文件的传输,基本思路如下: 发送方(客户端)向服务端发送文件名,服务端保存该文件名. 接收方(服务端)向客户端返回一个消息ok,确认文件名保存成功. 发送方(客户端)收到消息后 ...

  6. vue-perview插件的使用方法

    先给连接: https://github.com/LS1231/vue-preview   这是插件的文档 从文档中可以看出该插件已经值支持vue2.5以上了 安装: 引用 examples 注意: ...

  7. 02_jQuery 验证密码是6位或者8位纯数字

    var reg = new RegExp(/^\d{8}$/); //工作密码必须是8位数字 if(!reg.test("12544444").val())) { alert(&q ...

  8. docker+mysql 构建数据库的主从复制

    docker+mysql 构建数据库的主从复制 在最近的项目中,决定将项目改造成数据库读写分离的架构,后续会有博文详细讲述我的开发改造,本文主要记录我是如何一步步的构建数据库的主从复制. 为什么使用d ...

  9. 彻底掌握CORS跨源资源共享

    本文来自于公众号链接: 彻底掌握CORS跨源资源共享 ) 本文接上篇公众号文章:彻底理解浏览器同源策略SOP 一.概述 在云时代,各种SAAS应用层出不穷,各种互联网API接口越来越丰富,H5技术在微 ...

  10. webpack实践——DLLPlugin 和 DLLReferencePlugin的使用

    DLLPlugin 和 DLLReferencePlugin的使用 DLLPlugin 和 DLLReferencePlugin 用某种方法实现了拆分 bundles,同时还大大提升了构建的速度. 1 ...