Member 13010927 Ответов: 3

Почему не нравится мой ArrayList и Л;студентов&ГТ; studentroster = новый ArrayList и Л; И gt;(); ?


У меня есть оба класса моего кода. Перейдите вниз примерно на 3/4 чуть выше основного метода к списку публичных классов. Ошибки, похоже, связаны с тем, что мой ArrayList не любит студентов типа(String тоже не работал). Может ли кто-нибудь поместить это в IDE и помочь мне понять, что не так?

Я получаю ошибки в строках, которые читают:
1) Students newStudent = новая строка(studentId, firstName, lastName, email, возраст, оценки);
2) studentRoster. get (i). print();
3)средний интервал = (newStudent.getGrades()[0] + newStudent.getGrades()[1]+ newStudent.getGrades()[2])/3;
4 системы).из.код println("номер студента:" + newStudent.getstudentId() + "средний балл:" + средний);
5)если(б.getstudentId().равно(studentId))
6) Если (b. getQuantity () > 0)

Что я уже пробовал:

import java.util.Scanner;
import java.util.Arrays;
import java.util.ArrayList;

public class Student{
	//public static void main(String[] args){}
		//make instance variables
		private String studentId;
		private String firstName;
		private String lastName;
		private String email;
		private String age;
		private int[] grades;
				
		//do constructors
	public Student(String studentId, String firstName, String lastName, String email, String age, int[] grades){
		setStudentId(studentId);
		setFirstName(firstName);
		setLastName(lastName);
		setEmail(email);
		setAge(age);
		setGrades(grades);
	}
		
		//accessors and mutators
		public String getStudentId(){  /*why do you hate me? */
			return studentId;
		}

		public void setStudentId(String studentId){
			this.studentId = studentId;
		}
		
		public String getFirstName(){
			return firstName;
		}
		public void setFirstName(String firstName){     /*holy crap, go away errors*/
			this.firstName = firstName;
		}
		
		public String getLastName(){
			return lastName;
		}
		
		public void setLastName(String lastName){
			this.lastName = lastName;
		}
		
		public String getEmail(){
			return email;
		}
		
		public void setEmail(String email){
			this.email = email;
		}
		
		public String getAge(){
			return age;
		}
		
		public void setAge(String age){
			this.age = age;
		}
		
		public void setGrades(int[] grades){
			this.grades = grades;
		}
		public int[] getGrades(){
			return grades;

import java.util.ArrayList;
public class Roster {
	private static ArrayList<students> studentRoster = new ArrayList<>();
	
	public static void main(String[] args){
		//add all 5 students
			add("1","John", "Smith","John1989@gmail.com","20", 88, 79, 59);
			add("2","Suzan","Erickson","Erickson_1990@gmail.com","19", 91, 72, 85);
			add("3","Jack","Napoli","The_lawyer99@yahoo.com","19", 85, 84, 87);
			add("4","Erin","Black","Erin.black@comcast.net","22", 91, 98, 82);
			add("5","Jason","Hancock","jhanc21@wgu.edu","30", 98, 95, 96);
			printAllStudents();
			printAverageGrades();
	}
		public static void add(String studentId, String firstName, String lastName, String email, String age, int grades1, int grades2, int grades3){
			int[] grades = {grades1, grades2, grades3};
			Students newStudent = new String(studentId, firstName, lastName, email, age, grades); //why doesn't this work?
			studentRoster.add(newStudent);
		}
		public static void printAllStudents(){
			System.out.println("Student Roster");
			for(int i=0; i < studentRoster.size(); i++){
				studentRoster.get(i).print();  //why doens't this work?
		}
	}
		public static void printAverageGrades(){
			System.out.println("Average Grades");
			for(Students newStudent : studentRoster){
				int average = (newStudent.getGrades()[0] + newStudent.getGrades()[1]+ newStudent.getGrades()[2])/3;
				System.out.println("Student Number: " + newStudent.getstudentId() + " average grade: " + average);
			}
		}

		public static void findStudent(String studentId){
			for(Students b: studentRoster){
				if(b.getstudentId().equals(studentId)){
					if(b.getQuantity() > 0){
						System.out.println(studentId + " is a student.");
						return;
					}else{
						System.out.println(studentId + " is not a student.");
						return;
					}
				}
			}
			System.out.println("We do not have a student number " + studentId);
		}
					
	}

Eclipse-это принятие моего частного статический ArrayList и Л;студентов&ГТ; studentRoster = новый ArrayList и Л;&ГТ;;

Я знаю, что студенты-это не тип, но я попробовал String, и это тоже не сработало.

[no name]

"Может ли кто-нибудь поместить это в IDE и помочь мне понять, что не так?", отладка вашего кода-это твой работа. Это полезный навык, который вы должен развивать.

Member 13010927

Я знаю, в чем дело. Я просто понятия не имею, как это исправить. Я провел последние три дня в google, пытаясь понять это. Это проект, который я должен сделать для своего колледжа, и мне некому позвонить в выходные. Его не из-за любое время в ближайшем будущем. Я просто устал биться головой о клавиатуру. Я подумал, что если бы кто-то мог поместить его в IDE, он мог бы легче увидеть, что не так

[no name]

Извините.... и? Это не наша работа-отлаживать ваш код для вас. Вам не потребуется много усилий, чтобы скопировать / вставить все ошибки, которые вы видите на своем экране. Почему мы должны прилагать больше усилий, чтобы исправить ваше домашнее задание для Вас, чем вы вкладываете в него?

wseng

Ваш класс-студент, но вы объявляете студентов в своем списке классов

3 Ответов

Рейтинг:
2

Peter Leow

Это тот случай, когда одна ошибка приводит к другой. Я просто отвечу на ваш титул:
У тебя есть класс

public class Student{
, то вы пытаетесь
private static ArrayList<students> studentRoster = new ArrayList<>();
Вы заметили несоответствие в названиях здесь? Разве не должно быть
ArrayList<Student> studentRoster = new ArrayList<Student>();
Остальное вы должны выяснить сами.


Member 13010927

Я пробовал это раньше, но ничего не вышло. Конечно, я предполагаю, что это должно быть сделано, и это не сработало из-за чего-то еще, о чем я не знаю. Спасибо за ответ

Рейтинг:
14

wseng

1. Ваш класс Student но вы определяете Students в твоем списке учеников.

2. Это getStudentId() нет getstudentId() в списке.

3. Не удается найти символ getQuantity() в реестре, потому что вы не объявляете их в классе Student

4. Почему вы не используете

System.out.println(studentRoster.get(i)); 
вместо
studentRoster.get(i).print();


Member 13010927

То, как классы читают из других классов, все еще не имеет для меня особого смысла. Я чувствую,что мне следовало бы лучше знать 4. Спасибо