Hiện tại em muốn tạo 1 biến static như bên dưới. Nhưng khi chạy chương trình thì em chỉ muốn nhập 2 lần thay vì [20] như đã khai báo. Nhưng nếu làm vậy thì nó sẽ bị lỗi java.lang.NullPointerException vì mảng còn lại có giá trị null. Có cách nào khắc phục việc này không ạ.
public class AtomsDemo {
static Atoms[] atomArray=new Atoms[20];
public static void enterData() {
int i=0;
while(true){
System.out.println("Enter number:");
int number= Validation.checkInputInt(); //kiểm tra và gán
System.out.println("Enter symbol");
String symbol= Validation.checkInputString(); //kiểm tra và gán
System.out.println("Enter fullname");
String name=Validation.checkInputString(); //kiểm tra và gán
System.out.println("Enter weight");
float weight=Validation.checkInputFloat(); //kiểm tra và gán
atomArray[i]= new Atoms(number, symbol, name, weight);
i++;
System.out.print("Do you want to continue (Y/N): ");
if (!Validation.accept()) { //xác định muốn tiếp tục nhập hay ngưng
break;
}
}
}
}
public class Main {
public static void main(String[] args) {
enterData();
for (int i = 0; i < atomArray.length; i++) {
atomArray[i].display(); //in ra màn hình
}
System.out.println("");
}
}