ArrayList

一、集合框架介绍
集合框架有一个共有的接口Collection,集合对象就是将多个元素组成一个单元的对象,集合数据的一般操作就是用于存储、检索、删除和修改等操作。集合框架是用于表示和操纵集合的统一体系结构。
java集合框架的优点:
1.提供有用的数据结构和算法,从而减少编程工作
2.提高了程序速度和质量,因为它提供了高性能的数据结构和算法
3.允许不同 API 之间的互操作,API之间可以来回传递集合
4.可以方便地扩展或改写集合

java集合框架提供了四种容器可以选择使用,分别是Queue、List、Set和Map。为了该框架的高效/规范和易于扩展性,集合框架被设计成一组层次分明的标准化接口与实现,接口图如下:
图片来源:JAVA学习微信公众号
二、ArrayList
List表示的是一种有序的对象容器数据结构,java中使用List接口来规定这类数据结构。List接口实现了Collection, Iterable。常用的实现类主要有ArrayList和LinkedList。
ArrayList和我们之前介绍的数组有很多的优势,ArrayList的特点总结如下:
1.ArrayList 对象是长度可变的对象引用数组,类似于动态数组
2.继承 AbstractList 并实现 List 接口,方法统一
3.动态扩展,随着元素的添加,元素的数目会增加,列表也会随着扩展
4.访问和遍历对象时,它提供更好的性能

三、常用方法举例

package com;
import java.util.ArrayList;
import com.pojo.Student;
public class ArrayListStr{
	public static void main(String[]args){
		//线性结构,在这里你可以和数组比较一下
		int nums[]={1,3,4,4};
		System.out.println(nums[3])

		//初始化三个学生对象 
		Student stu1=new Student;
		stu1.setAge(23);
		stu1.setName("张三1");
	
		Student stu2=new Student();
		stu2.setAge(24);
		stu2.setName("张三2");

		Student stu3=new Student();
		stu3.setAge(25);
		stu3.setName("张三3");

		//定义一个ArrayList对象
		ArrayList stus=new ArrayList();
		//把3个学生对象加到一个ArrayList对象中
		stus.add(stu1);
		stus.add(stu2);
		stus.add(stu3);
		//也可以添加一个字符串对象
		stus.add("1234");

		System.out.println(stus.size());//ArrayList大小
		System.out.println(stus.isEmpty());//判断是否为空
		System.out.println(stus.contains(stu2));//是否包含某个对象

		//访问 随机访问
		Student temp=(Student)stus.get(2);
		System.out.println(temp.getName());

		//动态添加
		Student stu4=new Student();
		stu4.setAge(25);
		stu4.getName("张三4");
		stus.add(stu4);
		//删除
		stus.remove(stu2);

		//顺序访问,访问全部
		for(int i=0;i<stus.size();i++){
			Object object=stus.get(i);
			//以后会使用泛型优化,现在最好先判断
			if(object instanceof Student){
				Student stu=(Student)object;
				System.out.println(stu.getName());
			}
		}
		//转换为数组
		Student [] stuarray=(Student [])stus.toArray();

	}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值