无法理解如何在java中将用户输入的名称添加到数组中
//询问用户希望输入多少学生和分数无法理解如何在java中将用户输入的名称添加到数组中,java,arrays,Java,Arrays,//询问用户希望输入多少学生和分数 公共作废设置(){ 扫描仪键盘=新扫描仪(System.in); System.out.print(“输入学生人数:”); numStudents=keyboard.nextInt(); } public void setName(字符串someName){ 对于(int i=0;i
公共作废设置(){
扫描仪键盘=新扫描仪(System.in);
System.out.print(“输入学生人数:”);
numStudents=keyboard.nextInt();
}
public void setName(字符串someName){
对于(int i=0;i
我只希望能够在用户输入名称时添加名称,但在它们正确格式化之后。我只知道如何在用户输入时立即将它们添加到字符串中我认为您的问题是需要在循环之外声明
名称列表
:
public void setup() {
Scanner keyboard = new Scanner(System.in);
System.out.print("Enter number of students: ");
numStudents = keyboard.nextInt();
}
public void setName(String someName) {
String[] nameList = new String[numStudents]; //out here
for(int i = 0; i < numStudents; i++) {
System.out.print("Enter name of student # " + (i+1) + ": ");
Scanner keyboard = new Scanner(System.in);
String nameRough = keyboard.nextLine();
String name = nameRough.trim();
// i have to ask the user to enter the name int he for Last, first and then rearrange it so this is what thats doing
String firstName = name.substring(name.indexOf(",")+1);
String lastName = name.substring(0, name.indexOf(","));
name = firstName + " " + lastName;
// name = nameList;
System.out.println("");
// and then here is where i can't figure out how to add name to the army at i
nameList[i] = name;
}
}
公共作废设置(){
扫描仪键盘=新扫描仪(System.in);
System.out.print(“输入学生人数:”);
numStudents=keyboard.nextInt();
}
public void setName(字符串someName){
String[]nameList=新字符串[numStudents];//在这里
对于(int i=0;i
否则,您将在循环的每次迭代中创建一个新列表。您希望在每次迭代中创建一个新的名称,然后将其添加到此列表中,该列表在迭代过程中保持不变
你也有一些语法问题,像
nameList
vsnameList
一样,当您第一次使用它时,不声明name
。您所说的是什么意思,但在它们正确格式化之后
?您能显示您的输出/运行到目前为止的结果吗?这将有助于其他人帮助您。您可能需要研究拆分(“,”)的方法
用于您的名称,但每次我都想提示用户在Grades.main(Grades.java:29)的Student.setName(Student.java:51)的线程“main”java.lang.NullPointerException中输入nameException,但仍然不起作用,我尝试了很多不同的方法。那一次,它把我带到了调试窗口Thoonjour!输入学生人数:3在Grades.main(Grades.java:29)处的student.setName(student.java:47)处的线程“main”java.lang.NullPointerException中输入学生姓名#1:doe,john Exception