gpt4 book ai didi

java - 我无法从数组列表中打印用户输入

转载 作者:行者123 更新时间:2023-12-01 19:59:15 25 4
gpt4 key购买 nike

我对数组列表不太熟悉。如果我运行该程序,我可以输入所有变量,但是当我想查看我编写的内容时,它不会打印


import java.util.*;

public class Dynamic{
private String fname;
private String lname;
private int age;
private String course;
private int idnum;

public Dynamic(String Fname, String Lname, int Age, String Course, int IdNum) {
fname = Fname;
lname = Lname;
age = Age;
course = Course;
idnum = IdNum;
}

public String getfName() {
return fname;
}

public String getlName() {
return lname;
}

public int getAge() {
return age;
}

public String getCourse() {
return course;
}

public int getidNum() {
return idnum;
}

public String toString()
{
return fname+" "+lname+" "+age+" "+course+" "+idnum;
}

public static void main(String [] args) {

menu();
}//end of main
public static void menu() {
ArrayList<Dynamic> users = new ArrayList<>();
Scanner in = new Scanner (System.in);
System.out.println("1: Add Student\n2: View Student");
int choose = in.nextInt();
switch(choose) {
case 1:
addStudent(users);
break;
case 2:
viewStudent(users);
break;
}
}//end of menu

这是我获取用户输入的方法

    public static void addStudent(ArrayList<Dynamic> users) {
Scanner in = new Scanner (System.in);

System.out.println("Please Enter Name of Student");
String Fname = in.nextLine();
System.out.println("Please Enter Last Name of Student");
String Lname= in.nextLine();
System.out.println("Please Enter Age of Student");
int Age= in.nextInt();
String trash = in.nextLine();
System.out.println("Please Enter Course of Student");
String Course= in.nextLine();
System.out.println("Please Enter Id Number of Student");
int IdNum = in.nextInt();
Dynamic student = new Dynamic(Fname, Lname, Age, Course, IdNum);
users.add(student);
menu();
}//end of add users

下面是我的 viewStudent 方法,我不知道有什么问题或遗漏。我也是一个初学者,我无法完全理解 arraylist 方法

    public static void viewStudent(ArrayList<Dynamic> users) {
System.out.printf("%10s%7s%8s%10s\n", "Name","Age","Course","IdNumber");
for (Dynamic stud : users)
{
System.out.println(stud);
}

}//end of viewusers
}//end of studentclass

最佳答案

您可以将 ArrayList 声明为全局变量,然后可以在任何地方使用它,如下所示:-

import java.util.*;
public class Dynamic
{
static ArrayList<Dynamic> users = new ArrayList<Dynamic>();
private String fname;
private String lname;
private int age;
private String course;
private int idnum;
public Dynamic(String Fname, String Lname, int Age, String Course, int IdNum)
{
fname = Fname;
lname = Lname;
age = Age;
course = Course;
idnum = IdNum;
}
public String getfName()
{
return fname;
}
public String getlName()
{
return lname;
}
public int getAge()
{
return age;
}
public String getCourse()
{
return course;
}
public int getidNum()
{
return idnum;
}
public String toString()
{
return fname+" "+lname+" "+age+" "+course+" "+idnum;
}
public static void main(String [] args)
{
menu();
}//end of main
public static void menu()
{
Scanner in = new Scanner (System.in);
System.out.println("1: Add Student\n2: View Student");
int choose = in.nextInt();
switch(choose) {
case 1:
addStudent();
break;
case 2:
viewStudent();
break;
}
}
public static void addStudent()
{
Scanner in = new Scanner (System.in);
System.out.println("Please Enter Name of Student");
String Fname = in.nextLine();
System.out.println("Please Enter Last Name of Student");
String Lname= in.nextLine();
System.out.println("Please Enter Age of Student");
int Age= in.nextInt();
String trash = in.nextLine();
System.out.println("Please Enter Course of Student");
String Course= in.nextLine();
System.out.println("Please Enter Id Number of Student");
int IdNum = in.nextInt();
Dynamic student = new Dynamic(Fname, Lname, Age, Course, IdNum);
users.add(student);
menu();
}//end of add users
public static void viewStudent()
{
System.out.printf("%10s%7s%8s%10s\n", "Name","Age","Course","IdNumber");
for (Dynamic stud : users)
{
System.out.println(stud);
}
}//end of viewusers
}

希望这会有所帮助

关于java - 我无法从数组列表中打印用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59014965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com