Для каждого учащегося будет установлен набор тестов. Как я могу изменить этот параметр каждый раз, когда создаю новый объект? Можно ли изменить его значение, как если бы вы удвоили? Я попытался, но это не сработало. Благодарю.Изменить значения массива
StudentData
public class StudentData
{
private NumberFormat fmt = NumberFormat.getCurrencyInstance();
private String firstName;
private String lastName;
private double[] testScores;
private char grades;
public double average;
public double total;
public StudentData (String firstName, String lastName, double[] scores)
{
this.firstName = firstName;
this.lastName = lastName;
grades = courseGrade(scores);
if (scores.length == 0)
throw new IllegalArgumentException("There are no grades for this student");
else
testScores = scores;
}
public char courseGrade(double[] list)
{
for (int x = 0; x < list.length; x++)
total += list[x];
average = total/list.length;
if (average >= 90)
return 'A';
if (average < 90 && average >= 80)
return 'B';
if (average < 80 && average >= 70)
return 'C';
if (average < 70 && average >= 60)
return 'D';
else
return 'F';
}
public String toString()
{
return firstName + " " + lastName + " " + fmt.format(testScores);
}
}
TestProgStudentData
public class TestProgStudentData
{
public static void main(String[] args)
{
double[] scores;
List<StudentData> students = new ArrayList<StudentData>();
scores = {79.00, 94.00, 86.00, 72.00, 90.00};
students.add(new StudentData("Gaby", "Gomez", scores));
scores = {85.00, 67.00, 86.00, 100.00, 93.00};
students.add(new StudentData("David", "Gomez", scores));
for(StudentData f : students)
System.out.println(f);
}
}
Используйте арг массив String, чтобы собрать имя и результаты из командной строки –
Я думаю, что вы хотели бы изменить «Габи» 's оценки без новый объект, правильно? – Cebrian92
Изменить его на что? –