java arraylist6_Java(6) | ArrayList

Java(6) | ArrayList

# 什么是ArrayList

ArrayList是一个数组队列,相当于 动态数组。底层采用数组实现。

# 注意事项

泛型只能是引用类型,不能是基本类型

如果希望向集合arraylist中存储基本类型,必须使用基本类型对应的包装类

ArrayList中的操作不是线程安全的!所以,建议在单线程中才使用ArrayList,而在多线程中可以选择Vector或者CopyOnWriteArrayList。

# 简单使用

package com.leerep.javabase.arraylist;

import java.util.ArrayList;

public class FirstBlood {

public static void main(String[] args) {

ArrayListString list = new ArrayList();

System.out.println(list);

list.add("a");

list.add("b");

System.out.println(list);

}

}

# 数组 VS ArrayList

package com.leerep.javabase.arraylist;

/*

* 注意事项:

* 数组一旦创建在程序运行期间不可变

* ArrayList的长度可以随时改变

* */

import java.util.ArrayList;

public class ArrayVSArrayList {

public static void main(String[] args) {

Actor[] actors = new Actor[3];

actors[0] = new Actor("迪丽热巴", 20);

actors[1] = new Actor("古力娜扎", 20);

actors[2] = new Actor("玛尔扎哈", 20);

System.out.println(actors); //得到的是地址

for (int i = 0; i actors.length; i++) {

System.out.println(actors[i]); //重写toString方法后,打印对象的具体信息,不重写仍是地址值

}

ArrayListActor al = new ArrayList();

for (int i = 0; i actors.length; i++) {

al.add(actors[i]);

}

System.out.println(al); //重写toString方法后,打印对象的具体信息,不重写数组里仍是地址值

}

}

# 常用方法

package com.leerep.javabase.arraylist;

import java.util.ArrayList;

import java.util.Iterator;

public class ArrayListCommonMethod {

public static void main(String[] args) {

ArrayListString arrayList = new ArrayList();

arrayList.add("l");

arrayList.add("e"); //add()函数返回值为true或者false ArrayList集合添加动作一定成功,其他集合不一定。

arrayList.add("e");

arrayList.add("e");

arrayList.add("r");

arrayList.add("e");

arrayList.add("p");

System.out.println(arrayList);

//从集合中获取元素,参数是索引

String s = arrayList.get(0);

System.out.println("集合的第一个元素是:" + s);

//获取集合长度

int l = arrayList.size();

System.out.println("集合的长度是:" + l);

//从集合中删除元素,参数是索引

String deleteValue = arrayList.remove(3);

System.out.println("删除集合的第四个元素:" + deleteValue);

System.out.println(arrayList);

//集合遍历

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

System.out.print(arrayList.get(i) + "\t");

}

System.out.println();

for (String temp :

arrayList) {

System.out.print(temp + "\t");

}

System.out.println();

for (Iterator iter = arrayList.iterator(); iter.hasNext(); ) {

System.out.println("next is: " + iter.next());

}

//判断集合是否为空

if(arrayList.isEmpty())

System.out.println("集合为空");

else

System.out.println("集合非空");

//克隆集合 浅拷贝

ArrayListString al = (ArrayListString) arrayList.clone();

System.out.println(al);

//清空集合

arrayList.clear();

System.out.println(arrayList);

}

}

Java(6) | ArrayList 相关文章

小黄鸭系列java基础知识 | 基础语法:流程控制

基础语法:流程控制 前言 今天我们要探讨的是 java 的流程控制,流程简单来说就是就是做一件事的步骤,比如我们要创建一个 java 项目,第一步打开 ide 工具,第二步创建项目,第三步创建类,这就是一个流程,今天分享的就是 java 的流程控制语句,当然,对于

4.5 类型转换

4.5 类型转换 由于 Java 是强类型语言,所以要进行有些运算的时候,需要用到类型转换 graph LRA(低)....-B(高)C(byte,short,char)--D(int)--E(long)--F(float)--G(double) 运算中,不同类型的数据先转换为同一类型,然后进行运算 强制类型转换(高→低) pub

前端修仙之路-五、JavaScript原型初学者指南(1)

在JavaScript的世界中,万物皆对象。如果不处理对象,您将无法在JavaScript中走得很远。 它们是JavaScript编程语言几乎所有方面的基

Java根据视频的URL地址,获取视频时长

参考大佬的博客https://www.cnblogs.com/yoyoyu/p/14255264.html,可以不用下载视频而获取视频时长。 第一步:先引入Maven依赖 dependencies !-- jave核心包 -- dependency groupIdws.schild/groupId artifactIdjave-core/artifactId version2.4.6/version /

java基础课堂随记6

循环结构 while循环 do...while循环 for循环 在Java5中引入了一种主要用于数组的增强型for循环 while循环 while是最基本的循环,结构为: while(布尔值){ //循环内容} 只要布尔值为true,循环就会一直执行下去。 大多数情况是要让循环停止下来的,所以需要一

从问题入手,深入了解JavaScript中原型与原型链

从问题入手,深入了解JavaScript中原型与原型链 前言 开篇之前,我想提出3个问题: 新建一个不添加任何属性的对象为何能调用toString方法 如何让拥有相同构造函数的不同对象都具备相同的行为 instanceof关键字判断对象类型的依据是什么 要是这3个问题都能回

java单元测试之Mock静态方法

1. public final class AmountUtil { public static String CustomFormatWith2Digits(int amount) { return "1"; }} 2.引入依赖 dependency groupIdorg.mockito/groupId artifactIdmockito-core/artifactId version1.10.19/version scopetest/scope /depende

java8-Stream filter操作:多个List取并集

在项目中很容易遇到那种需要取并集或者交集的情况。 如果按照传统的方式,使用for循环嵌套for循环来操作,也可以实现。但是代码看起来没有那么优雅。 Java8提供了Stream的操作。 例如简单的递归查找。 根据当前的分类找到相对应的所有子级对象。 如果使用传

Java ArrayList源码分析(含扩容机制等重点问题分析)

写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解。所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项目,专注 Java 后端面试题 + 解析 + 重点知识详解 + 精选

Redis持久化 - RDB和AOF

一、持久化的作用 1. 什么是持久化 持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。 持久化Redis所有数据保持在内存中,对数据的更新将异步地保存到磁盘上。 2. 持久化的实现方式 快照方式持久化 快照方式持久

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值