ArrayList

ArrayList

1.集合类中,最常用的类
2.使用的时候需要导包
3.格式:ArrayList<添加一个类型,比如String> arrl=new ArrayList();

添加元素功方法

//1.先创建对象
ArrayList<String> arrl = new ArrayList<String>();
//2.添加元素
arrl.add("2343dd");
arrl.add("dssww");
//注意,这个方法(数组索引,添加内容),原来的内容往后顺延一位
arrl.add(0, "qqq");
		
System.out.println(arrl);

结果=[qqq, 2343dd, dssww]	

获取指定元素,返回长度,删除元素,修改元素

//1.创建集合类对象
ArrayList<String> arrl=new ArrayList<String>();
//2.增加元素
arrl.add("ni");
arrl.add("hao");
arrl.add("java");
System.out.println(arrl);

//3.返回指定的元素,结果返回hao
//arrl.get(1);
System.out.println(arrl.get(1));

//4.返回集合长度,结果返回3
//arrl.size();
System.out.println(arrl.size());

//5.删除指定元素,选择remove(int index)时remove(索引)结果返回被删除的元素:ni
//arrl.remove(0);
//System.out.println(arrl.remove(0));
//5.删除指定元素,选择remove(Object o)时remove("字符串")结果返回被删除的元素:turn或false
//System.out.println(arrl.remove("ni"));
  
//修改指定的元素,返回被修改的元素:ni
//arrl.set(0, "haha");
System.out.println(arrl.set(0, "haha"));

练习----获取满足要求的元素(从字符串数组中取出有指定姓氏的人)

//1.创建一个字符串数组
String[] s={"张三丰","张三","张无忌","三四单","第三方","冠军的风采"};
//2.创建一个集合类对象
ArrayList<String> arrl=new ArrayList<>();
	//3.把字符串数组放到集合中
for(int a=0;a<s.length;a++){
	arrl.add(s[a]);

}
	//4.遍历集合中姓张的元素
for(int a=0;a<arrl.size();a++){
	String ss=arrl.get(a);
	if(ss.startsWith("张")){
		System.out.println(ss);
	}
}

练习----存储自定义对象并遍历

/*		
 * 		1.先自定义一个类,以学生类为例
 * 		2.创建一个学生类对象
 * 		3.创建一个集合
 * 		4.把学生信息写入学生类
 * 		4.把学生类对象加入集合
 * 		5.遍历集合
 * 
*/

Test student=new Test();
ArrayList<Test> arrl=new ArrayList<Test>();
Test sutdent1=new Test("张三",24);
Test sutdent2=new Test("李四",19);
Test sutdent3=new Test("无极",18);
Test sutdent4=new Test("王珂",22);

arrl.add(sutdent1);
arrl.add(sutdent2);
arrl.add(sutdent3);
arrl.add(sutdent4);

for(int a=0;a<arrl.size();a++){
	Test t=arrl.get(a);
	
	System.out.println(t.getName()+"----"+t.getAge());
}

练习----键盘录入自定义对象并遍历(封装方法)

/*		
 * 		1.先自定义一个类,以学生类为例,类中年龄类型改为String
 * 		2.创建一个学生类对象
 * 		3.创建一个集合
 * 		4.键盘录入学生信息,然后加入到学生类
 * 		4.把学生类对象加入集合
 * 		5.遍历集合
 * 
*/
public class TestDemo {
	public static void main(String[] args) {
		
	ArrayList<Test> arrl=new ArrayList<Test>();
	
	bianLi(arrl);
	bianLi(arrl);
	bianLi(arrl);
	for(int a=0;a<arrl.size();a++){
		Test result=arrl.get(a);
		System.out.println(result.getName()+"----"+result.getAge());	
	}
}
public static void bianLi(ArrayList<Test> arrl){

	//1.初始化一下,新建一个对象
	Test student=new Test();
	//2.键盘输入姓名和年龄
	Scanner sc=new Scanner(System.in);
	System.out.println("输入姓名");
	String s1=sc.nextLine();
	System.out.println("输入年龄");
	String s2=sc.nextLine();
	//3.键盘录入的信息加入student对象的方法中
	student.setName(s1);
	student.setAge(s2);
	arrl.add(student);
	}
}

在这里插入图片描述

自定义类遍历时出现的问题

在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值