集合ArrayList的一个练习题

设计一个联系人类,完成一个对联系人增删改查的操作流程,所有的联系人信息存储在ArrayList集合中

package cn.ketang.zuoye;

import java.util.ArrayList;
import java.util.Scanner;

public class ContactArraylist {
	static ArrayList<Person> al = new ArrayList<Person>();//定义一个泛型集合

	public static void main(String[] args) {
		shuRu();
	}

	private static void shuRu() {
		System.out.println("添加1-----删除2----修改3----4查找---0退出");
		int a = new Scanner(System.in).nextInt();
		switch (a) {
		case 1:
			addPerson();
			shuRu();
			break;
		case 2:
			delPerson();
			shuRu();
			break;
		case 3:
			modifPerson();
			shuRu();
			break;
		case 4:
			findPerson();
			shuRu();
			break;
		case 0:
			System.exit(0);
			break;
		default:
			break;
		}

	}

	private static void findPerson() {
		String x = new Scanner(System.in).nextLine();
		int ii = 0;
		for (int i = 0; i < al.size(); i++) {
			if (al.get(i).getName().equals(x)) {//查找方法,先获取到al的某个元素,在获得他的名字,判断是否和输入的名字一致
				System.out.println("查找成功");
				System.out.println(al);
				i++;
			}
		}
		if (ii==0) {
			System.out.println("暂无此人");
		}
	}

	private static void modifPerson() {
		String x = new Scanner(System.in).nextLine();
		String x1 = new Scanner(System.in).nextLine();

		for (int i = 0; i < al.size(); i++) {
			if (al.get(i).getName().equals(x)) {
				al.get(i).setName(x1);
				System.out.println("修改成功");
			}
		}
		System.out.println(al);
	}

	private static void delPerson() {
		String x = new Scanner(System.in).nextLine();
		for (int i = al.size()-1; i >=0; i--) {
			if (al.get(i).getName().equals(x)) {
				al.remove(i);
				System.out.println("删除成功");
			}
		}
		System.out.println(al);
	}

	private static void addPerson() {
		String x = new Scanner(System.in).nextLine();
		char y = new Scanner(System.in).nextLine().charAt(0);
		int z = new Scanner(System.in).nextInt();
		int z1 = new Scanner(System.in).nextInt();
		Person p = new Person(x, y, z, z1);
		al.add(p);
		System.out.println(al);
	}
}
package cn.ketang.zuoye;

/**
 * @author nice
 *
 */
public class Person {
	private String name;
	private char sex;
	private int age;
	private int number;

	public Person() {
		// TODO Auto-generated constructor stub
	}

	public Person(String name, char sex, int age, int number) {
		super();
		this.name = name;
		this.sex = sex;
		this.age = age;
		this.number = number;
	}

	public String toString() {
		// TODO Auto-generated method stub
		return "姓名:" + name + "性别:" + sex + "年龄:" + age + "电话号码:" + number;
	}

	// @Override
	// public boolean equals(Object obj) {
	// if (obj instanceof Person) {
	// Person p = (Person)obj;
	// return this.name==p.name;
	// }
	// return false;
	// }

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public char getSex() {
		return sex;
	}

	public void setSex(char sex) {
		this.sex = sex;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	public int getNumber() {
		return number;
	}

	public void setNumber(int number) {
		this.number = number;
	}
}

2.编写一个程序,使用集合存储客户的邮件地址。地址中应该包含姓名,街道,市(县),省(自治区),国家(地区)然后显示集合中的内容;要求使用对象数组和至少两种集合对象来实现

  此程序的输出结果如下:

  姓        名:         李四

   街        道:         南山

   市    (县):         深圳

   省(自治区):         广东

   国家(地区):         中国

****************************

   姓        名:         张三

   街        道:         南山

扫描二维码关注公众号,回复: 2591927 查看本文章

   市    (县):         南昌

   省(自治区):         江西

   国家(地区):         中国

**************************

   姓        名:         王五

   街        道:        布吉

   市    (县):         深圳

   省(自治区):         广东

   国家(地区):         中国

package cn.ketang.zuoye02;

import java.util.ArrayList;
import java.util.Scanner;

public class ListTest {
	static ArrayList<Client> al = new ArrayList<Client>();

	public static void main(String[] args) {
		shuru();
	}

	private static void shuru() {
		System.out.println("添加1删除2修改3打印4退出0");
		int a = new Scanner(System.in).nextInt();
		switch (a) {
		case 1:
			addPerson();
			shuru();
			break;
		case 2:
			delPerson();
			shuru();
			break;
		case 3:
			modifPerson();
			shuru();
			break;
		case 4:
			printPerson();
			shuru();
			break;
		case 0:
			System.exit(0);
			break;
		default:
			break;
		}
	}

	private static void printPerson() {
		for (int i = 0; i < al.size(); i++) {
			System.out.println("姓               名:" + "\t" + al.get(i).getName());
			System.out.println("街               道:" + "\t" + al.get(i).getJiedao());
			System.out.println("市       (县):" + "\t" + al.get(i).getChengshi());
			System.out.println("省(自治区):" + "\t" + al.get(i).getShengfeng());
			System.out.println("国家(地区):" + "\t" + al.get(i).getCountry());
			System.out.println("************************");
		}
	}

	private static void modifPerson() {
		String x = new Scanner(System.in).nextLine();
		String x1 = new Scanner(System.in).nextLine();

		for (int i = 0; i < al.size(); i++) {
			if (al.get(i).getName().equals(x)) {
				al.get(i).setName(x1);
				System.out.println("修改成功");
			}
		}
		System.out.println(al);
	}

	private static void delPerson() {
		String x = new Scanner(System.in).nextLine();
		for (int i = 0; i < al.size(); i++) {
			if (al.get(i).getName().equals(x)) {
				al.remove(i);
				System.out.println("删除成功");
			}
		}
		System.out.println(al);
	}

	private static void addPerson() {
		String x = new Scanner(System.in).nextLine();
		String y = new Scanner(System.in).nextLine();
		String z = new Scanner(System.in).nextLine();
		String z1 = new Scanner(System.in).nextLine();
		String z2 = new Scanner(System.in).nextLine();
		Client cli = new Client(x, y, z, z1, z2);
		al.add(cli);
		System.out.println(al);
	}
}
package cn.ketang.zuoye02;

public class Client {
	private String name;
	private String jiedao;
	private String chengshi;
	private String shengfeng;
	private String country;

	public Client() {
	}

	public Client(String name, String jiedao, String chengshi, String shengfeng, String country) {
		super();
		this.name = name;
		this.jiedao = jiedao;
		this.chengshi = chengshi;
		this.shengfeng = shengfeng;
		this.country = country;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getJiedao() {
		return jiedao;
	}

	public void setJiedao(String jiedao) {
		this.jiedao = jiedao;
	}

	public String getChengshi() {
		return chengshi;
	}

	public void setChengshi(String chengshi) {
		this.chengshi = chengshi;
	}

	public String getShengfeng() {
		return shengfeng;
	}

	public void setShengfeng(String shengfeng) {
		this.shengfeng = shengfeng;
	}

	public String getCountry() {
		return country;
	}

	public void setCountry(String country) {
		this.country = country;
	}

	public String toString() {
		return "姓名:" + name + "街道:" + jiedao + "市县:" + chengshi + "省:" + shengfeng + "国家" + country;
	}
}

猜你喜欢

转载自blog.csdn.net/xiaoxin1024/article/details/81366383