栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

ArrayList概述、方法及应用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

ArrayList概述、方法及应用

概念

ArrayList是集合的一种,支持索引

特点
  • 集合的大小不固定,可以动态变化
  • 集合提供很多方便好用的功能
  • 集合的类型不固定
注意 

需要import一个java.util.ArrayList;

构造器

public ArrayList() //创建一个空的集合

常用方法 1、public boolean add(E)

作用:将指定元素添加到集合末尾

package ArraryList;

import java.util.ArrayList;

public class Main {

	public static void main(String[] args) {
		//创建一个ArrayList对象
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("Java");
		list.add("yierkang");
		list.add(23);
		list.add(false);
		//以上添加的方法返回布尔类型,添加成功返回true,失败返回false
		System.out.println(list);
	}

}

运行结果

2、public boolean add(int index,E)

作用:将元素加入到指定位置,括号前是添加的位置,后是添加的元素

package ArraryList;

import java.util.ArrayList;

public class Main {

	public static void main(String[] args) {
		//创建一个ArrayList对象
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("Java");
		list.add("yierkang");
		list.add(23);
		list.add(false);
		//以上添加的方法返回布尔类型,添加成功返回true,失败返回false
		System.out.println(list);
		list.add(1,"插队!");
		//System.out.println(list);
	}
}

运行结果

3、Collections.addAll(E,element1,element2,...);

作用:批量添加元素到集合中

package ArraryList;
import java.util.ArrayList;
import java.util.Collections;//需要import一个java.util.Collections的包

public class test1 {

	public static void main(String[] args) {
		ArrayList list = new ArrayList<>();
		Collections.addAll(list,98,77,66,89,79,50,100);
        //括号内第一个是要添加的集合,后边是添加的元素
		System.out.println(list);
	}

}

运行结果

  

注意:需要import一个java.util.Collections的包

 4、ArrayList

作用:泛型,限制集合内的类型,括号内填数据类型(例如String,int,double等)

例如

ArrayList;//只能操作字符串类型

ArrayList;//只能操作整形类型

注意:集合只能存储引用类型,不支持基本类型

​​​​package ArraryList;

import java.util.ArrayList;

public class Main {

	public static void main(String[] args) {
		//创建一个ArrayList对象
		ArrayList list2 = new ArrayList();//jkd1.7以后后面的<>可以不用声明
		list2.add("Java");
		list2.add(23);//会产生报错,该集合不能添加除字符串以外的类型
	}

}
5、public E get(int index) 

作用:查找指定位置的元素值,括号内填查找的位置

package ArraryList;
import java.util.ArrayList;
public class Api {

	public static void main(String[] args) {
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("MySQl");
		list.add("C#");
		System.out.println(list.get(2));//方法调用
        //跟数组一样,从0开始,取第二位
	}
}

运行结果

 6、public int size()

作用:返回集合的数量(元素个数)

package ArraryList;
import java.util.ArrayList;
public class Api {

	public static void main(String[] args) {
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("MySQl");
		list.add("C#");
		System.out.println(list.size());//调用方法
        //返回值为整形
	}
}

运行结果

7、集合的遍历(不算方法)
package ArraryList;
import java.util.ArrayList;
public class Api {

	public static void main(String[] args) {
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("MySQl");
		list.add("C#");
        //开始遍历
		for(int i=0;i 

 运行结果

8、public E remove(E element)

作用:移除集合中指定位置的元素并返回该元素

package ArraryList;
import java.util.ArrayList;
public class Api {

	public static void main(String[] args) {
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("MySQl");
		list.add("C#");
        //输出被删除的元素
		System.out.println(list.remove(2));//调用方法
        //输出被删除后的集合
		System.out.println(list);
	}
}

运行结果

 9、public boolean remove("String E")

作用:直接删除指定元素,删除成功返回true,失败返回false(括号内输入具体要移除的元素)

package ArraryList;
import java.util.ArrayList;
public class Api {

	public static void main(String[] args) {
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("MySQl");
		list.add("Java");
		list.add("C#");
		list.add("Ziggbee");
		System.out.println(list.remove("Java"));
		System.out.println(list);
	}
}

运行结果

注意:如果有重复的元素,优先且只删除最先出现的

10、public E set(int index,String E)

作用:修改指定索引位置的元素值,并返回被删除的值(括号前是要修改元素的位置,后边是修改后的元素)

package ArraryList;
import java.util.ArrayList;
public class Api {

	public static void main(String[] args) {
		ArrayList list = new ArrayList();
		list.add("Java");
		list.add("MySQl");
		list.add("Java");
		list.add("C#");
		list.add("Ziggbee");
		System.out.println(list.set(3, "C++"));//调用方法
        //修改第3位的内容为“C++”
		System.out.println(list);
	}
}

运行结果

储存自定义类型的对象

Main

package ArraryList;
import java.util.ArrayList;
import java.util.Collections;
public class MovieMain {

	public static void main(String[] args) {
		ArrayList list = new ArrayList<>();//添加类型为Movie类
		Movie m1 = new Movie("肖申克的救赎",9.8,"蒂姆·罗宾斯");
		Movie m2 = new Movie("霸王别姬",9.8,"张国荣、张丰毅");
		Movie m3 = new Movie("阿甘正传",9.8,"张国荣、张丰毅");
		Collections.addAll(list,m1,m2,m3);//批量导入
		//遍历集合的内容
		for(int i=0;i 

Movie类

package ArraryList;

public class Movie {
    //变量
	private String name;
	private double score;
	private String actor;
	//无参构造器
	public Movie() {
		// TODO 自动生成的构造函数存根
	}
    //有参构造器,用来存入数据
	public Movie(String name, double score, String actor) {
		super();
		this.name = name;
		this.score = score;
		this.actor = actor;
	}
    //get
	public String getName() {
		return name;
	}

	public double getScore() {
		return score;
	}

	public String getActor() {
		return actor;
	}
    //set
	public void setName(String name) {
		this.name = name;
	}

	public void setScore(double score) {
		this.score = score;
	}

	public void setActor(String actor) {
		this.actor = actor;
	}
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1021445.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号