如何横向arraylist
问题描述:
我需要知道如何将我的平均函数横切到这个结果函数,如果你越来越?如何横向arraylist
这是主类:
import java.util.ArrayList;
import java.util.Scanner;
public class main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
ArrayList <Calculations> students = new ArrayList <Calculations>();
for (int i = 0; i < 5; ++i) {
Calculations s = new Calculations();
System.out.print("Enter name : ");
s.name = scan.next();
System.out.print("Eter percentage : ");
s.percetage = scan.nextDouble();
students.add(s);
System.out.println("Enter Mrks Obtained");
}
for (Calculations s: students) {
s.result();
for (Calculations i: students) {
s.Average();
}
}
}
}
这是结果类:
import java.util.Scanner;
public class Calculations {
public String name;
public double percetage;
public int integer;
public void result() {
System.out.println((percetage >= 35.0 f ? (name + " Pass") : (name + " Fail")));
}
public void Average() {
// TODO Auto-generated method stub
int mark[] = new int[5];
int i;
float sum = 0;
float avg, perc;
Scanner scan = new Scanner(System.in);
System.out.print("Enter marks Obtained in 5 Subjects : ");
for (i = 0; i < 5; i++) {
mark[i] = scan.nextInt();
sum = sum + mark[i];
}
avg = sum/5;
perc = (sum/500) * 100;
System.out.print("Average Marks = " + avg);
System.out.print("\nPercentage = " + perc + "%");
}
}
答
for(Calculations s : students){
s.result();
//for(Calculations i : students){s.Average(); }
s.Average();
}
你没有循环ArrayList中的两倍。尝试更改您的代码。
答
这很难通过你不完整的问题来解决,这也不是特定的问题。你的程序在我的日食中工作正常。我建议如下:
1)检查您的计算类中的字段/拼写的名称,使其与主类中使用的名称完全一致。 2)既然你输入字符串扫描仪后,尝试读取范围如下:
s.name = scan.nextLine();
我希望它帮助。
究竟是什么问题?你想达到什么目的,这段代码片断失败了? – Mureinik