**モデレーターはこの質問を削除またはロックしてください
申し訳ありませんが、私のコードのすべてを投稿してください
import java.util.*;
import java.lang.*;
import java.io.*;
public class MinorAssignment_PartB {
public static void main(String[] args) throws Exception {
List<StudentMarks> marks = new ArrayList<StudentMarks>();
String File = "studentinfo.txt";
Scanner scan = new Scanner(new File(File));
scan.useDelimiter(",");//makes the delimiter a comma
while(scan.hasNext()) {
marks.add(new StudentMarks(scan.next(), scan.next(),
scan.nextDouble(), scan.nextDouble(),
scan.nextDouble(), scan.nextDouble()));
System.out.printf("%-23s %-15s %-15s %-15s " +
"%-15s %-15s %-15s %-15s %n", "STUDENT NAME",
"STUDENT FAN", "PART A", "PART B", "PARTt C",
"PART D", "MARK", "GRADE");
for (int i = 0; i < marks.size(); i++) {
System.out.println(marks.get(i));
}
}
そしてクラス
import java.text.*;
public class StudentMarks {
//contains a student class and an array of doubles.
private Student student = new Student();
private double marks[] = new double[5];
DecimalFormat fmt = new DecimalFormat("0.##");
public StudentMarks(String name, String fan,
double partA, double partB, double partC, double partD) {
Student stud = new Student(name, fan);
this.student = stud;
this.marks[0] = partA;
this.marks[1] = partB;
this.marks[2] = partC;
this.marks[3] = partD;
this.marks[4] = ((partA*0.1) + (partB*0.4) + (partC*0.2) + (partD*0.3));
}
@Override
public String toString() {
return "" + student + "\t" + marks[0] + "\t\t" + marks[1] + "\t\t" + marks[2] + "\t\t" + marks[3] + "\t\t" + fmt.format(marks[4])+"%";
}
}
だから私はarraylistの行で特定の要素を取得する必要があります
10 行のテキストがあり、各行には 2 つの文字列と 2 つの double が含まれています。Adam Adamson adam0001 85.4 79.8 82.4 86.1 さらに 9 行、同じ形式で名前と数字が異なります
最初の行を出力するmarks.get(0)がありますが、3番目の要素85.4だけが必要です
試してくれたみんなに感謝しますが、私はそれを理解しました。