如何在java控制台中以表格形式显示arraylist
我想以表格形式显示arraylist学生的数据。我有这个代码,但它只显示我在表中输入的最后一组数据。我的代码怎么了
public class gradesummary extends student{
static ArrayList<student> studentList = new ArrayList<student>();
@SuppressWarnings("resource")
public static void main(String[] args){
student student = new student();
Scanner in = new Scanner(System.in);
for (int x=0; x<=10; x++){
System.out.print("Student Name: ");
try {
student.name = in.nextLine();
}
catch (Exception e)
{
e.printStackTrace();
}
System.out.print("Section: ");
try {
student.section = in.nextLine();
}
catch (Exception e)
{
e.printStackTrace();
}
System.out.print("Midterm Grade: ");
try {
student.mgrade = in.nextDouble();
}
catch (Exception e)
{
e.printStackTrace();
}
System.out.print("Second Quarter Grade: ");
try {
student.sqgrade = in.nextDouble();
}
catch (Exception e)
{
e.printStackTrace();
}
System.out.print("Final Exam Grade: ");
try {
student.fegrade = in.nextDouble();
}
catch (Exception e)
{
e.printStackTrace();
}
student.fgrade = (student.mgrade*1/5)+(student.sqgrade*3/10)+(student.fegrade*9/20);
studentList.add(student);
in.nextLine();
}
Show(studentList);
}
private static void Show(ArrayList<student> studentList2) {
new student();
System.out.println(" Name Section Midterm Grade Second Quarter Grade Final Exam Grade Final Grade ");
for (int i=0;i<=10;i++)
{
student student1 = studentList.get(i);
System.out.println (" " +student1.name+ " "+student1.section+" "+student1.mgrade+" "+student1.sqgrade+" "+student1.fegrade+" "+student1.fgrade+" " );
}
}
}
这是我班的学生
public class student {
String name;
String section;
Double mgrade;
Double sqgrade;
Double fegrade;
Double fgrade;
}
我怎样才能把表格数据弄清楚?更有条理?这样地:
# 1 楼答案
您只创建一个学生,并且始终覆盖该学生的数据。您必须在获得所有输入后创建一个新学生
同时从节目中删除new student()。我还建议使用另一个变量名