Java 以4为一组对未知数量的整数求和
我的问题是,在运行我的代码后,我意识到它不会削减它。它当前列出了studentName(string)arrayList的所有元素和studentGrade(double)arrayList的所有元素。 问题是,给每个学生分配四个等级,每组四个等级必须分别相加(然后我将平均)。如果我将studentGrade arrayList中的所有元素相加。。。这并不意味着每个学生都是独立的。我应该从这里去哪里?我一直在努力想办法Java 以4为一组对未知数量的整数求和,java,arraylist,Java,Arraylist,我的问题是,在运行我的代码后,我意识到它不会削减它。它当前列出了studentName(string)arrayList的所有元素和studentGrade(double)arrayList的所有元素。 问题是,给每个学生分配四个等级,每组四个等级必须分别相加(然后我将平均)。如果我将studentGrade arrayList中的所有元素相加。。。这并不意味着每个学生都是独立的。我应该从这里去哪里?我一直在努力想办法 package arrayList; import java.util.Sc
package arrayList;
import java.util.Scanner;
import java.util.ArrayList;
public class TestGrades {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
ArrayList<String> studentName = new ArrayList<String>();
ArrayList<Double> studentGrade = new ArrayList<Double>();
boolean loop = true;
while (loop) {
System.out.println(" Please Enter Student Name");
String student = scanner.nextLine();
if(student.equals("C"))
{
break;
}
else
{
studentName.add(student);
}
System.out.println("Please enter Student Grade");
for (int j = 0; j < 4; j++) {
Double grade = Double.parseDouble(scanner.nextLine());
studentGrade.add(grade);
}
System.out.println(studentName);
System.out.print(studentGrade);
}
}
}
包数组列表;
导入java.util.Scanner;
导入java.util.ArrayList;
公营考试成绩{
公共静态void main(字符串[]args){
扫描仪=新的扫描仪(System.in);
ArrayList studentName=新建ArrayList();
ArrayList studentGrade=新建ArrayList();
布尔循环=真;
while(循环){
System.out.println(“请输入学生姓名”);
字符串student=scanner.nextLine();
如果(学生等于(“C”))
{
打破
}
其他的
{
studentName.add(学生);
}
System.out.println(“请输入学生成绩”);
对于(int j=0;j<4;j++){
Double grade=Double.parseDouble(scanner.nextLine());
学生成绩。添加(成绩);
}
System.out.println(学生姓名);
系统输出打印(学生成绩);
}
}
}
听起来您需要一个学生类,该类包含一个学生姓名和该学生的分数数组。然后,您可以在该类中创建一个方法,该方法汇总该学生的所有成绩,并在循环遍历学生列表时调用该方法
或者是一个多维数组,其中学生是一个索引,第二个维度是每个索引的分数数组。不要走这条路线,除非它是学校作业,而且你还没有学习课程和OOP,因为维护和阅读这条路线很糟糕。不清楚问题是什么:你输入了一个名字和四个年级;求平均值,清空数组,直到完成为止。好的,问题是用户可以输入任意数量的学生。每个学生将输入4个等级。这意味着可以输入任意数量的等级。我不知道如何自动将未知数量的分数相加,一次4个分数。此外,这些分数应该以某种方式附加到学生身上。如果他们需要“附加”到学生身上,那么你应该附加他们,或者像安德鲁建议的那样使用一个班级,或者使用一个简单的学生名=>分数地图。但眼前的问题可以按照我的建议解决。因为你的要求很模糊,我不明白为什么它不起作用。很抱歉,它太模糊了。很难清楚地说出我想做什么。用户输入学生和每个学生4个等级,而不是我。他们可以输入任意数量的学生。如果不涉及用户输入,这对我来说很容易。然后假装没有用户输入:编写一个没有用户输入的解决方案。数据进入系统的方式与处理方式是正交的。谢谢。我必须研究如何创造所有这些对不起,我还是那么迷茫。让学生上课很有吸引力,但问题是,似乎我需要为每一组4个年级设置一个单独的属性。由于这是用户输入,因此可以有任意数量的等级集。有没有办法让程序在输入一组新的等级时自动创建一个新数组或arrayList?@StevieJ321您可以随时创建数组。是的,我可以手动创建任意数量的数组。但是,每一组4个年级都需要一个单独的考试。因此,当用户输入一个新学生时,它们似乎需要自动生成。