java编写一个学生类,包含的属性有学号、姓名、性别、年龄,将所有学生存储在一个数组中,编写学生管理程序实现如下操作:1、增加一个学生2、根据学号删除某个学生3、将所有学生年龄增加一倍4、按数组中顺序显示所有学生
时间: 2023-05-29 13:03:08 浏览: 312
编写Student类,类中包含学生姓名,学号等私有数据成员。使用JAVA反射机制修改一个学生对象的私有数据成员
5星 · 资源好评率100%
以下是一个简单的Java代码实现:
```
public class Student {
private String id;
private String name;
private String gender;
private int age;
public Student(String id, String name, String gender, int age) {
this.id = id;
this.name = name;
this.gender = gender;
this.age = age;
}
public String getId() {
return id;
}
public String getName() {
return name;
}
public String getGender() {
return gender;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void doubleAge() {
age = age * 2;
}
@Override
public String toString() {
return "Student{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", gender='" + gender + '\'' +
", age=" + age +
'}';
}
}
```
上面的代码定义了一个学生类,包含学号、姓名、性别、年龄等属性,以及一些基本的方法。
下面是一个学生管理程序的实现:
```
import java.util.Arrays;
import java.util.Scanner;
public class StudentManager {
private Student[] students;
private int size;
public StudentManager(int capacity) {
students = new Student[capacity];
size = 0;
}
public void addStudent(Student student) {
if (size < students.length) {
students[size] = student;
size++;
System.out.println("添加学生成功!");
} else {
System.out.println("添加学生失败,数组已满!");
}
}
public void removeStudent(String id) {
int index = -1;
for (int i = 0; i < size; i++) {
if (students[i].getId().equals(id)) {
index = i;
break;
}
}
if (index != -1) {
for (int i = index; i < size - 1; i++) {
students[i] = students[i + 1];
}
size--;
System.out.println("删除学生成功!");
} else {
System.out.println("删除学生失败,未找到该学生!");
}
}
public void doubleAge() {
for (int i = 0; i < size; i++) {
students[i].doubleAge();
}
System.out.println("所有学生年龄已增加一倍!");
}
public void displayStudents() {
System.out.println("所有学生信息如下:");
for (int i = 0; i < size; i++) {
System.out.println(students[i]);
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
StudentManager manager = new StudentManager(10);
while (true) {
System.out.println("请选择操作:1.增加学生 2.删除学生 3.年龄增加一倍 4.显示所有学生 0.退出程序");
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.println("请输入学生信息:学号 姓名 性别 年龄");
String id = scanner.next();
String name = scanner.next();
String gender = scanner.next();
int age = scanner.nextInt();
Student student = new Student(id, name, gender, age);
manager.addStudent(student);
break;
case 2:
System.out.println("请输入要删除的学生学号:");
String idToRemove = scanner.next();
manager.removeStudent(idToRemove);
break;
case 3:
manager.doubleAge();
break;
case 4:
manager.displayStudents();
break;
case 0:
System.exit(0);
break;
default:
System.out.println("无效的选择!");
break;
}
}
}
}
```
上面的代码实现了一个简单的学生管理程序,可以根据用户的选择进行增加、删除、修改等操作。在实现过程中,使用了一个`StudentManager`类来封装学生数组的操作,使得代码更加清晰易懂。
阅读全文