セッターの助けを借りて配列に名前を入力したい...これは私のコードです...どうやってそれを行うのを手伝ってもらえますか?? ありがとうございます。
//これは入力ステートメントを持つクラス myclass です //私の問題はプログラム say Exception in thread "main" java.lang.NullPointerException //at studentproject.MyClass.AddList(MyClass.java:27) //at studentproject.Main. main(Main.java:20) // Java Result: 1 // プログラムのどこに問題があるのか ???
public class MyClass
{
Student St = new Student();
Student[]Array1 = new Student[10];
Student[]ArrayF1 = new Student[10];
void AddList()
{
Scanner Scan = new Scanner(System.in);
for (int i=0; i<Array1.length & i<ArrayF1.length; i++)
{
System.out.println("Enter Student NAME Number " + (i+1) + ":");
Array1[i].setName(Scan.next());
//System.out.println("Enter Student MARK Number " + (i+1) + ":");
//St.setMark(Scan.nextFloat());
}
}
}
// これは、すべてのセッターとゲッターを備えた私の Student クラスです
public class Student
{
private String Name;
private float Mark;
/**
* @return the Name
*/
public String getName() {
return Name;
}
/**
* @param Name the Name to set
*/
public void setName(String Name) {
this.Name = Name;
}
/**
* @return the Mark
*/
public float getMark() {
return Mark;
}
/**
* @param Mark the Mark to set
*/
public void setMark(float Mark) {
this.Mark = Mark;
}
もう1つの問題は、配列を印刷したいときです。配列の値ではなく、配列のメモリアドレスが印刷されます...私の問題はどこですか...印刷される内容は次のようになります...生徒の名前番号10を入力してください: dddddd "studentproject .Student@1b67f74"
void PrintList()
{
for (int i=0; i<Array1.length; i++)
{
System.out.println(Array1[i]);
}
}