List遍历的几种方式以及几种基本的增删改查


import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ListTest {

	public static void main(String[] args) {
		List<Person> list = new ArrayList<>();

		Person p1 = new Person("zhouyu", 22, "jiangsu");
		Person p2 = new Person("liubei", 33, "sichuan");
		Person p3 = new Person("caocao", 44, "henan");

		list.add(p1);
		list.add(p2);
		list.add(p3);

		Iterator<Person> iterator = list.iterator();

		// 方式1 迭代器
		while (iterator.hasNext()) {
			Person person = iterator.next();
			System.out.println(person);
		}
		System.out.println("-+_+_+_+_+_+_+_-");
		// 方式2 普通for
		for (int i = 0; i < list.size(); i++) {
			Person person = (Person) list.get(i);
			System.out.println(person);
		}
		System.out.println("-+_+_+_+_+_+_+_-");
		// 方式3 增强for
		for (Object object : list) {
			Person person = (Person) object;
			System.out.println(person);

		}

		System.out.println("-+_+_+_+_+_+_+_-");
		Person person = new Person("zhangsan", 23, "zhangcun");
		// 列表的修改功能
		list.set(2, person);
		// 自带的toString方法
		System.out.println(list.toString());

		System.out.println("-+_+_+_+_+_+_+_-");
		// 列表的截取功能 从指定位置开始截取到指定位置结束
		System.out.println(list.subList(1, 3));
		// [Person [name=liubei, age=33, address=sichuan], Person
		// [name=zhangsan, age=23, address=zhangcun]]

		// 获取指定索引 的元素
		System.out.println(list.get(0));
	}
}

package cn.spring01.ArrayList;


public class Person {

	private String name;
	private int age;
	private String address;
	@Override
	public String toString() {
		return "Person [name=" + name + ", age=" + age + ", address=" + address + "]";
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public Person(String name, int age, String address) {
		super();
		this.name = name;
		this.age = age;
		this.address = address;
	}
	
	
	
	
	
}


打印结果:

Person [name=zhouyu, age=22, address=jiangsu]

Person [name=liubei, age=33, address=sichuan]

Person [name=caocao, age=44, address=henan]

-+_+_+_+_+_+_+_-

Person [name=zhouyu, age=22, address=jiangsu]

Person [name=liubei, age=33, address=sichuan]

Person [name=caocao, age=44, address=henan]

-+_+_+_+_+_+_+_-

Person [name=zhouyu, age=22, address=jiangsu]

Person [name=liubei, age=33, address=sichuan]

Person [name=caocao, age=44, address=henan]

-+_+_+_+_+_+_+_-

[Person [name=zhouyu, age=22, address=jiangsu], Person [name=liubei, age=33, address=sichuan], Person [name=zhangsan, age=23, address=zhangcun]]

-+_+_+_+_+_+_+_-

[Person [name=liubei, age=33, address=sichuan], Person [name=zhangsan, age=23, address=zhangcun]]

Person [name=zhouyu, age=22, address=jiangsu]



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值