-
编写一个控制台程序,重复输n个学生的信息(学生姓名,年龄,性别),并把这5个学生对象加入到StringBuffer中buffer.append(student),最后输出StringBuffer的内容,输出格式如下:
1.张三 22 男
2.李四 18 女
……
注意每个学生的信息输出一行。` -
思路:首先建一个学生类(Student),将学生姓名、年龄、性别封装起来,setter/getter方法设置和得到属性,在测试类(Test)中建一个 Student[] students = new Student[N]数组,用来存学生这些个对象,然后通过构造器构造学生。如下所示:
-
主要:students[i] = new Student(input.next(), input.nextInt(), input.next());//键盘输入学生的每一个属性后封装成一个学生对象,将其引用给students[i] 。
-
buffer.append((i+1)+"."+students[i].getStuName()+"\t").append(students[i].getAge()+"\t").append(students[i].getGender()+"\n");
//或用buffer.append(students[i]+"\n");添加每一个学生的信息到buffer中 -
最后,在控制台打印出学生信息
-
具体实现代码如下:
/**
* @author yyh on 2020/3/31 9:32
*/
public class Student {
private String stuName;
private int age;
private String gender;
public Student(){}
public Student(String stuName, int age, String gender) {
this.stuName = stuName;
this.age = age;
this.gender = gender;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
@Override
public String toString() {
return "Student{" +
"stuName='" + stuName + '\'' +
", age=" + age +
", gender=" + gender +
'}';
}
}
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入学生人数:");
int N = input.nextInt();
System.out.println("请输入"+N+"个学生的信息(学生姓名,年龄,性别):");
StringBuffer buffer = new StringBuffer();
Student[] students = new Student[N];
for (int i = 0; i < students.length; i++) {
students[i] = new Student(input.next(), input.nextInt(), input.next());
buffer.append((i+1)+"."+students[i].getStuName()+"\t").append(students[i].getAge()+"\t").append(students[i].getGender()+"\n");
//或用buffer.append(students[i]+"\n");
}
System.out.println("输出"+N+"个学生的信息如下:");
System.out.println(buffer);
//或用:
/* for (Student s:students) {
System.out.println(s);
}*/
}
输出如下:
"C:\Program Files\Java\jdk1.8.0_131\bin\java.exe" "-javaagent:D:\Program Files (x86)\JetBrains\IntelliJ IDEA 2018.3.6\lib\idea_rt.jar=50225:D:\Program Files (x86)\JetBrains\IntelliJ IDEA 2018.3.6\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_131\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\rt.jar;D:\蓝桥\lanqiaoxm\out\production\lang_11" ex.ex_1.Test
请输入学生人数:
5
请输入5个学生的信息(学生姓名,年龄,性别):
kk 11 男
jj 12 女
ee 13 男
rr 14 女
tt 15 男
输出5个学生的信息如下:
1.kk 11 男
2.jj 12 女
3.ee 13 男
4.rr 14 女
5.tt 15 男
Process finished with exit code 0