第一行制表符功能出现问题


Piet van Gogh has an average grade of: 6-
-^^--__-_-
Vincent Appel
Johannes Mondriaan
Karel van Rijn has an average grade of: 7.0
-^-----___
No Name Matches Found
Herman Vermeer has an average grade of: 4.5
------___-
Johannes Brood
Johannes Brood has an average grade of: 1.0
-^-_-___-_
Herman Vermeer
There are no more student records available.

正如你所看到的。皮特稍稍偏左。但我希望所有的顶部线条都能很好地相互对齐。我玩过tab功能,但它只是将所有第一行进一步向右移动。

任何人都知道我如何让Piet稍微向右移动,与其他顶部线条很好地对齐。

void printStudentName(Scanner studentNameScanner) {
String studentName = scannerToStringLine(studentNameScanner);
out.printf("%s has an average grade of: ", studentName);

}

void identifyStudentName(Scanner studentNameScanner) {
studentNameScanner.useDelimiter(" ");
while(studentNameScanner.hasNext()) {
printStudentName(studentNameScanner);
}
void averageGradeOfStudent(Scanner inputScanner) {
inputScanner.useDelimiter("_");
identifyStudentName(stringToScanner(scannerToStringNext(inputScanner)));
calculateAverageGrade(stringToScanner(scannerToStringNext(inputScanner)));
}

void calculateAverageGrade(Scanner inputScanner) {
ArrayList<Integer> gradeArrayList = new ArrayList<>(); //Store grades in an array list.
inputScanner.useDelimiter(" ");
while(inputScanner.hasNext()) {
gradeArrayList.add(inputScanner.nextInt());

}
mathScoreCount = gradeArrayList.size();
determineFinalGrade(gradeArrayList, mathScoreCount);
}

void determineFinalGrade(ArrayList<Integer> gradeArrayList, int mathScoreCount) {
cumulativeMathScore = 0;
for(int i = 0; i < gradeArrayList.size(); i++) { //Access each grade in the grade array list by looping through each element of the array list.
cumulativeMathScore += gradeArrayList.get(i);
}

double mathScoreAverage = cumulativeMathScore / mathScoreCount;

printGradeAverage(mathScoreAverage);
}

void printGradeAverage(double mathScoreAverage) {
if(mathScoreAverage >= 5.5 && mathScoreAverage < 6) {

out.printf("6-n ");
} else  {

out.printf("%.1fn ", Math.round(mathScoreAverage*2)*0.5);
}
}

似乎应该在打印带有学生姓名的第一行之前输出一个选项卡。

然后,一切都会很顺利。

out.printf("t")
while(studentNameScanner.hasNext()) {
printStudentName(studentNameScanner);
}

最新更新