マイコードは以下に掲載されています。私はランダムな数値の等級を生成し、それらに文字の等級を割り当てています。その後、プログラムをテストするクライアントクラスを作成します。私の問題はプログラムの終わりに向かっている。私は、違法な式の開始を言っているというエラーが出ています。たぶん私はこれを見るために目を新鮮にする必要があります。私はそれを把握していないようだ。ありがとう!ユーザ定義クラスのJava配列
import java.util.Random;
public class Convertgrade
{
private int numberOfStudents;
private int[] studentGrades = new int[100];
public Convertgrade()
{
numberOfStudents = 0;
}
//one arg constructor, sets numberOfStudents = students
public Convertgrade(int students)
{
numberOfStudents = students;
setGrades(students);
}
//mutator
public void setStudents(int students)
{
if(students < 0)
{
numberOfStudents = 0;
}
else
{
numberOfStudents = students;
setGrades(students);
}
}
//accessor
public int getStudents()
{
return numberOfStudents;
}
public void setGrades(int students)
{
Random randomNumber = new Random();
for(int count = 0; count < students; count++)
{
studentGrades[count] = randomNumber.nextInt(101);
}
}
public char[] getLetterGrades()
{
char[] letterGrades = new char[numberOfStudents];
for(int count = 0; count < numberOfStudents; count++)
{
if(studentGrades[count] <= 59)
letterGrades[count] = 'F';
else if(studentGrades[count] <= 69)
letterGrades[count] = 'D';
else if(studentGrades[count] <= 79)
letterGrades[count] = 'C';
else if(studentGrades[count] <= 89)
letterGrades[count] = 'B';
else if(studentGrades[count] <= 100)
letterGrades[count] = 'A';
}
return letterGrades;
}
public int getAs()
{
int numberOfAs = 0;
for(int count = 0; count < numberOfStudents; count++)
{
if(studentGrades[count] >= 90)
numberOfAs++;
}
return numberOfAs;
}
public int[] getNumberOfEachGrade()
{
int[] numberOfGrades = new int[numberOfStudents];
for(int count = 0; count < numberOfStudents; count++)
{
if(studentGrades[count] <= 59)
numberOfGrades[count] ++;
else if(studentGrades[count] <= 69)
numberOfGrades[count] ++;
else if(studentGrades[count] <= 79)
numberOfGrades[count] ++;
else if(studentGrades[count] <= 89)
numberOfGrades[count] ++;
else if(studentGrades[count] <= 100)
numberOfGrades[count] ++;
}
return numberOfGrades;
}
public String toString()
{
System.out.format("The number of students = %d\n", numberOfStudents);
for(int count = 0; count < numberOfStudents; count++)
{
System.out.format("Grade %d is %d\n", count + 1, studentGrades[count]);
}
return String.format("\n");
public void sort_array(int[] array);
//GETTING ERRORS HERE^: ILLEGAL START OF EXPRESSION
{
int intTemp;
int count = 0;
int index = 0;
for(count = 0; count < (array.length - 1); count++)
{
for(index = 0; index < (array.length - 1); index++)
{
if(array[index] > array[index +1])
{
intTemp = array[index +1];
array[index +1] = array[index];
array[index] = intTemp;
}
}
}
}
}
}
'public void sort_array(int [] array){...}' ...セミコロンを空の中括弧で置き換えます。 –
あなたはすでに問題を指摘しています。ステートメントからセミコロンを削除するだけです。 –
まだエラーが発生しています。応答していただきありがとうございます。あなたはそれをコンパイルしてみてもらえますか? –