In: Computer Science
JAVA LANGUAGE
Required Tasks:
In Eclipse, create a Java Project as CS-176L-Assign4.
Create 3 Java Classes each in its own file Student.java,
StudentList.java, and Assign4Test.java.
Copy your code from Assignment 3 into the Student.java and
StudentList.java. Assign4Test.java should contain the main
method.
In Student.java, add a new private variable of type Integer called
graduationYear.
In Student.java, create a new public setter method setGraduationYear to set the graduationYear. The method will have one parameter of type Integer. The method will set the Student object’s graduationYear to the passed in value.
In Student.java, create a new public getter method getGraduationYear to get the graduationYear. The method will have no parameters. The method will return the Student object’s graduationYear.
In Student.java, modify the Student Class Constructor method to accept graduationYear as a parameter. Assign the initial value for the graduationYear variable in the Constructor method.
In Student.java, modify the toString method to add
graduationYear to the String containing the other student info.
Make sure the format of the String remains consistent.
In StudentList.java, add a new method as follows:
public boolean updateStudentGraduationYear (String email, Integer
year) {...}
This method should implement the Java code to search through the studentArray to find the student based on given email. If a student is found, call the setGraduationYear method in the Student Class to update the Student’s graduation year. The return value should be true or false based on if the student was found and the graduation year updated.
In Assign4Test.java, create 3 students with graduation year
2022. Create a StudentList containing these 3 students (look at the
code in Assign2Test or Assign3Test to figure out how to do
this).
In Assign4Test.java, Print the info of all the Students in the
StudentList using the getAllStudentInfo method. Update the
graduation year of one of the Students to 2021 using the
updateStudentGraduationYear method. Again print the info of all the
Students in the StudentList using the getAllStudentInfo method to
verify that the graduation year was updated correctly.
Code must compile and run without warnings or errors.
Final output should look something like the following:
Name: [Abdulmuhsin J. Al-Kandari], Email: [[email protected]],
Major: [SE], GraduationYear: [2022]
Name: [Justin R. Schlemm], Email: [[email protected]], Major:
[SE], GraduationYear: [2022]
Name: [Mary F. Menges], Email: [[email protected]], Major:
[SE], GraduationYear: [2022]
Name: [Abdulmuhsin J. Al-Kandari], Email:
[[email protected]], Major: [SE], GraduationYear: [2022]
Name: [Justin R. Schlemm], Email: [[email protected]], Major:
[SE], GraduationYear: [2022]
Name: [Mary F. Menges], Email: [[email protected]], Major:
[SE], GraduationYear: [2021]
//*******************************************************************
// Student
// This class can be used to create a Student object having a name,
an email, and a major
//*******************************************************************
public class Student {
private String name;
private String email;
private String major;
public Student(String name, String email, String
major){
setName(name);
setEmail(email);
setMajor(major);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
public String toString(){
return "Name: [" + this.name + "],
Email: [" + this.email + "], Major: [" + this.major + "]";
}
}
//*******************************************************************
// StudentList
// This class can be used to create a StudentList object which
contains an array of Student objects
//*******************************************************************
public class StudentList {
private static final boolean StudentInfo =
false;
private Student[] studentArray;
public String email;
public StudentList(Student[] studentArray){
setStudentArray(studentArray);
}
public Student[] getStudentArray() {
return studentArray;
}
public void setStudentArray(Student[] studentArray)
{
this.studentArray =
studentArray;
}
public int studentCount(String major) {
int count = 0;
for(int i=0;
i<studentArray.length; i++)
{
if(major.equals
( studentArray[i].getMajor()))
{
count++;
{
}
}
}
return count;
}
public Student getStudentInfo(String email) {
for(int
i=0;i<studentArray.length; i++)
if(studentArray[i].getEmail()==email) {
return studentArray[i];
}
return null;
}
public String getAllStudentInfo() {
String returnString = "";
for (int
i=0;i<studentArray.length; i++)
{
returnString =
returnString+studentArray[i].toString()+System.lineSeparator();
}
return returnString;
}
public String studentInfo(String string) {
return null;
}
}
public class Student{
private String name;
private String email;
private String major;
private int graduationYear;
public Student(String name, String email, String majaor, int graduationYear) { // added graduation year in Constructer
setName(name);
setEmail(email);
setMajor(major);
setGraduationYear(graduationYear);
}
public int getGraduationYear() { // getgraduation method
return graduationYear;
}
public void setGraduationYear(int graduationYear) { // set graduation method
this.graduationYear = graduationYear;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
@Override
public String toString() {
return "Name: [" + this.name + "], Email: [" + this.email + "], Major: [" + this.major + "], GraduationYear: [" + this.graduationYear + "]"; // added graduation year to the toString method
}
}
public class StudentList {
private static final boolean StudentInfo = false;
private Student[] studentArray;
public String email;
public StudentList(Student[] studentArray) {
setStudentArray(studentArray);
}
public void setStudentArray(Student[] studentArray) {
this.studentArray = studentArray;
}
public Student[] getStudentArray() {
return studentArray;
}
public int studentcount(String major) {
int count = 0;
for(int i = 0; i < studentArray.length; i++) {
if(major.equals(studentArray[i].getMajor())){
count++;
}
}
return count;
}
public Student getStudentInfo(String email) {
for(int i = 0; i < studentArray.length; i++) {
if(studentArray[i].getEmail() == email) {
return studentArray[i];
}
}
return null;
}
public String getAllStudentInfo() {
String returnString = "";
for(int i = 0; i < studentArray.length; i++) {
returnString += studentArray[i].toString() + System.lineSeparator();
}
return returnString;
}
public String studentInfo(String string) {
return null;
}
public boolean updateStudentGraduationYear(String email, int year) { // added method to update the graduation year of a student using the email.
for(int i = 0; i < studentArray.length; i++) {
if(studentArray[i].getEmail() == email) {
studentArray[i].setGraduationYear(year);
return true; // if found updated and returned true
}
}
return false; // else false
}
}
public class Assign4Test {
public static void main(final String[] args) {
Student[] studentArray = { new Student("Abdulmuhsin J.Al-Kandari", "[email protected]", "SE", 2022), new Student("Justin R. Schlemm", "[email protected]", "SE", 2022), new Student("Mary F. Menges", "[email protected]", "SE", 2022) };
StudentList studentlist = new StudentList(studentArray); // created student list using the student array above.
System.out.print(studentlist.getAllStudentInfo());
studentlist.updateStudentGraduationYear("[email protected]", 2021); // used the updategraduationyear method in the Student list class to update the graduation year of student from the list.
System.out.print(studentlist.getAllStudentInfo());
}
}