Java language programming:List的使用

(源于PTA) 题目:
<1>.定义Person类。
<2>.定义私有属性String name,int age,使用Eclipse生成每个属性setter 、getter,有参Person(String name,int age) 、无参构造方法,toString方法。
<3>.定义Main类,在main方法中定义List list = new ArrayList();
<4>.给变量n赋值生成n个Person对象并添加到列表中,该Person的name和age通过键盘给出循环列表,输出列表所有Person对象信息(调用toString方法)。
<5>.输入一个字符串表示姓名,判断该字符串表示的Person对象在List中是否存在,如果存在,输出该Person,否则输出此人不存在。
输入格式:
先一行输入n表示对象个数,然后每行输入一个Person对象的name和age
一行输入一个人的姓名对其进行查询。

输出格式:
对每一对象,在一行中输出对象的信息。
对查询的人员,查到输出该人的信息,否则输出此人不存在。

输入样例:
例如:
(Test.1)
3
zhang 23
li 44
wang 33
li

(Test.2)
3
zhang 23
li 44
wang 33
may

输出样例:
例如:
(Testp.1)
Person [name=zhang, age=23]
Person [name=li, age=44]
Person [name=wang, age=33]
Person [name=li, age=44]

(Testp.2)
Person [name=zhang, age=23]
Person [name=li, age=44]
Person [name=wang, age=33]
此人不存在

import java.util.*;
class Person{
	private String name;
	private int age;
	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;
	}
	Person(String name,int age){
		this.name=name;
		this.age=age;	
	}
	Person(){
	}
	public String toString() {
		return "Person [name="+getName()+", age="+getAge()+"]";
	}
}
class Main{
	public static void main(String args[]) {
		Scanner in=new Scanner(System.in);
		List list = new ArrayList();
		int flag=0;
		int n=in.nextInt();
		for(int i=0;i<n;i++) {
			String s=in.next();
			int a=in.nextInt();
			Person p=new Person(s,a);
			list.add(p);
		}
		String ne=in.next();
		for(int i=0;i<list.size();i++) {
			System.out.println(list.get(i));
			
		}
		for(int i=0;i<list.size();i++)
		{
			Person ps=(Person)list.get(i);
		if(ne.equals(ps.getName()))
		{
		    flag=1;
			System.out.println(ps);
		}
}
		if(flag==0) {
			System.out.println("此人不存在");
		}
	}
}

你可能感兴趣的:(java,list,开发语言)