Как я могу правильно реализовать свои четыре операции метода, чтобы протестировать их в моем основном методе?
Я разбил свою java-программу на два класса: один называется классом Student, а другой - классом StudentListing. Я просто пытаюсь понять, как я могу правильно реализовать четыре операции метода, чтобы я мог использовать их в основном методе для целей тестирования. Может кто-нибудь помочь? Я борюсь. Вот мой код для обоих классов.
public class Student{ private String name; // key field private int ID; private double GPA; public Student(String name, int ID, double GPA){ this.name= name; this.ID= ID; this.GPA=GPA; } public void setName(String name){ this.name= name; } public String toString() { return " Student Name: " + name + " Student ID: " + ID + "Student GPA: " + GPA; } public String getName() { return name; } public void setID(int ID) { this.ID= ID; } public int getID(){ return ID; } public void setGPA(double GPA){ this.GPA= GPA; } public double getGPA(){ return GPA; } }
public class StudentListings{ private Student[] data; // an array of Student objects private int next; private int size; public StudentListings(){ next=0; size=100; data= new Student[size]; } public StudentListings(int s){ next=0; data= new Student[s]; size=s; } public boolean insert(Student newStudentListing) { // the structure is full if(next > = size) return false; // store a deep copy of the client's node data[next]= newStudentListing.deepCopy(); if(data[next]== null) return false; next= next + 1; // prepare for the next insert return true; } public StudentListings fetch(String targetKey){ StudentListings student; StudentListings temp; // access the node using a sequential search int i=0; while(i < next &&!(data[i].compareTo(targetKey)==0) { i++; } if(i== next) // node not found return null; // deep copy the node's information into the client's node student= data[i].deepCopy(); if(i!= 0) // bubble-up accessed node { temp= data[i-1]; data[i-1]=data[i]; data[i]= temp; } return student; } public boolean delete(String targetKey){ int i=0; while(i < next && !(data[i].compareTo(targetKey)==0)) { i++; } if(i==next) // node not found // move the last node into the deleted node's position return false; data[i]= data[next-1]; data[next-1]=null; next= next-1; return true; // node found and deleted } public boolean update(String targetKey, Student newStudentListing){ if(delete(targetKey)== false) return false; else if(insert(newStudentListing)==false) return false; else return true; } public void showAll(){ for(int i=0; i< next; i++){ System.out.println(data[i].toString()); } public static void main(String[] args){ StudentListings obj1= new StudentListings(); Student l1 = new Student("Terrence", 1, 3.45); Student l2 = new Student("Roberta", 2, 2.15); Student l3 = new Student("George", 3, 1.50); obj1.insert(l1); obj1.insert(l2); obj1.insert(l3); obj1.ShowAll(); l3= obj1.fetch("Terrence"); System.out.println(l3.toString()); obj1.delete("Roberta"); obj1.ShowAll(); obj1.update("George"); obj1.ShowAll(); }
Что я уже пробовал:
Я попытался реализовать эти методы в своем основном методе, который был описан выше, но еще не протестировал их, потому что мне нужна некоторая помощь в их правильной реализации. Кто-нибудь может мне помочь?
wirvine
Привет, не могли бы вы предоставить более подробную информацию? Четко объясните, что вы хотите, чтобы ваша программа делала. У вас есть много определенных методов, и вы пытаетесь использовать некоторые методы, которых не существует.