如何在 java 中创建对象数组并接受用户输入?我已经编写了下面的代码,但让我感到困惑



我已经编写了第一个类并声明了所有变量和方法(get和set方法(。 在第二类中,我创建了一个数组对象,但它无法正常工作,可能是我在某处犯了错误,所以任何人都可以帮助我。

#Class 1

package com.javaArray;
public class ArrayOfObject {
private String fName;
private String lName;
public String getfName() {
return fName;
}
public String getlName() {
return lName;
}
public void setlName(String lName) {
this.lName = lName;
}
public void setfName(String fName) {
this.fName = fName;
}

}

#Class 2

package com.javaArray;
import java.util.Scanner;
public class Person {
public static void main(String[] args) {
ArrayOfObject[] arr = new ArrayOfObject[5];
Scanner sc = new Scanner(System.in);
for(int i=0;i<arr.length;i++){
System.out.println("Enter First Name");
arr[i].setfName(sc.next());
System.out.println();
System.out.println("Enter Last Name");
arr[i].setlName(sc.next());
System.out.println();
}
System.out.println("Persons name are:");
for(int i=0;i<arr.length;i++){
System.out.println(arr[i].getfName()+" "+arr[i].getlName());
}
}

}

ArrayOfObject[]

arr = new ArrayOfObject[5];

在此步骤中,您只需初始化Array而不是其中的对象。

因此,在每个步骤中,您必须通过执行以下操作来初始化每个对象:

for (int i = 0; i < arr.length; i++) {    
arr[i] = new ArrayOfObject();
System.out.println("Enter First Name");
...

首先,不需要getter和setter以及所有额外的代码。您可以使用库龙目岛,因此您无需编写大量代码。所以你的第一堂课应该是这样的:

@Data
public class ArrayOfObject {
private String fName;
private String lName;
}

对于 Class2,您可以参考的第二件事:如果我答对了您的问题,请从 System.in - Java 中读入。

最新更新