Хорошо, теперь я думаю, что я отказался от надежды найти решение проблемы, которая должна быть простой проблемой. В основном, я создаю систему записей студентов, в которой хранятся данные учащихся в ArrayList. Сначала я создал конструктор в классе Student, чтобы указать, какие записи будут иметь каждый студент. Затем я создал экземпляр класса Student в основном классе (т. Е. Класс с основным методом), а затем добавил объект-ученик в listListArrayList.Как отобразить содержимое объекта в Java
Кстати, вместо жесткого кодирования деталей ученика моя первоначальная цель состояла в том, чтобы позволить пользователю ввести данные, а затем я буду использовать объект Scanner или BufferedReader для получения сведений, хранящихся в объекте Student, и затем в ArrayList, но у меня также есть проблемы с этим; поэтому я, вероятно, займусь этой проблемой, как только закончите с этим.
В любом случае, я ожидаю, что выходные данные распечатывают данные учащихся, но вместо этого я получаю ячейку памяти (т. Е. [[email protected]]). Я знаю, что мне нужно переопределить метод toString, но как именно это делается, я не могу получить. Я получаю синтаксические ошибки везде, как только я вхожу в блок кода @Override для метода toString. Вот что я пытался:
import java.util.*;
class Student {
private String studentID;
private String studentName;
private String studentAddress;
private String studentMajor;
private int studentAge;
private double studentGPA;
Student (String studentID, String studentName, String studentAddress, String
studentMajor, int studentAge, double studentGPA){
this.studentID=studentID;
this.studentName=studentName;
this.studentAddress=studentAddress;
this.studentMajor=studentMajor;
this.studentAge=studentAge;
this.studentGPA=studentGPA;
}
}
public static void main(String[] args) {
Student ali = new Student("A0123", "Ali", "13 Bond Street", "BSc Software Engineering", 22, 3.79);
List<Student> studentList = new ArrayList<>();
studentList.add(ali);
@Override
String toString() {
StringBuilder builder = new StringBuilder();
builder.append(ali).append(studentList);
return builder.toString();
}
System.out.println(builder);
}
Технически, вы можете использовать 'System.out.println (х),' как 'toString' называется внутренне ... – MadProgrammer