java命名course为名的class_Java语言程序设计基础篇(原书第8版) 编程练习题10.9(课程类Course)...

本博客介绍了如何改写Java的Course类,实现数组自动增长、dropStudent方法以及clear方法。示例代码创建了一个Course实例,添加了学生,删除一个学生,并展示了课程中的剩余学生。
摘要由CSDN通过智能技术生成

/*改写Course类(程序清单10-6)

* ·创建一个新的更大的数组并复制当前数组的内容来实现数组大小的自动增长

* ·实现dropStudent方法

* ·添加一个名为clear()的新方法,然后删除选某门课程的所有学生。

* 编写一个程序,创建一门课程,添加三个学生,删掉一个学生,然后显示这门课程的学生。*/

public class Exercise10_9 {

public static void main(String[] args) {

Course course1 = new Course("Data Structures");

course1.addStudent("Peter Jones");

course1.addStudent("Brian Smith");

course1.addStudent("Anne Kennedy");

course1.dropStudent("Anne Knenedy");

System.out.println("Number of students in course1: "

+ course1.getNumberOfStudents());

String[] students = course1.getStudents();

for(int i = 0; i < course1.getNumberOfStudents(); i++) {

if(i != course1.getNumberOfStudents() - 1) {

System.out.print(students[i] + ", ");

}

else

System.out.print(students[i]);

}

}

}

class Course{

private String courseName;

private String[] students = new String[100];

private int numberOfStudents;

public Course(String courseName) {

this.courseName = courseName;

}

public void addStudent(String student) {

students[numberOfStudents] = student;

numberOfStudents++;

}

public String[] getStudents() {

return students;

}

/*Return the number of students*/

public int getNumberOfStudents() {

return numberOfStudents;

}

public String getCourseName() {

return courseName;

}

/*Delete student*/

public void dropStudent(String student) {

for (int i = 0; i < numberOfStudents; i++) {

if (student == students[i]) {

for (int j = i; j < numberOfStudents - 1; j++) {

students[j] = students[j + 1];

}

students[students.length - 1] = null;

numberOfStudents--;

break;

}

}

}

/*Delete all the students in a course*/

public void clear() {

numberOfStudents = 0;

students = new String[0];

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值