java定义Person类 定义私有属性String name,int age,使用Eclipse生成每个属性setter 、getter,有参Person(String name,int age) 、无参 构造方法,toString方法。 定义Main类,在main方法中 定义List list = new ArrayList(); 用键盘给变量n赋值 生成n个Person对象并添加到列表中,该Person的name和age通过键盘给出 循环列表,输出列表所有Person对象信息(调用toString方法) 输入一个字符串表示姓名,判断该字符串表示的Person对象在List中是否存在,如果存在,输出该Person,否则输出此人不存在。 输入格式: 先一行输入n表示对象个数,然后每行输入一个Person对象的name和age 一行输入一个人的姓名对其进行查询 输出格式: 对每一对象,在一行中输出对象的信息。 对查询的人员,查到输出该人的信息,否则输出此人不存在。不需要提示语句
时间: 2023-11-27 12:52:58 浏览: 118
生成setter/getter方法-[高手之路]-java教程 第2章 共9章
Person类的代码如下:
```java
public class Person {
private String name;
private int age;
public Person() {}
public Person(String name, int age) {
this.name = name;
this.age = 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;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}
}
```
Main类的代码如下:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
List<Person> list = new ArrayList<>();
int n = scanner.nextInt();
for (int i = 0; i < n; i++) {
String name = scanner.next();
int age = scanner.nextInt();
Person person = new Person(name, age);
list.add(person);
}
for (Person p : list) {
System.out.println(p.toString());
}
String queryName = scanner.next();
boolean found = false;
for (Person p : list) {
if (p.getName().equals(queryName)) {
System.out.println(p.toString());
found = true;
break;
}
}
if (!found) {
System.out.println("此人不存在。");
}
scanner.close();
}
}
```
输入示例:
```
3
Alice 20
Bob 25
Charlie 30
Bob
```
输出示例:
```
Person [name=Alice, age=20]
Person [name=Bob, age=25]
Person [name=Charlie, age=30]
Person [name=Bob, age=25]
```
阅读全文