Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit d451495

Browse files
[java] [student_grades] Replace Control Flag With Break Refactoring (refactor)
1 parent 763967a commit d451495

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

‎examples/java/java-student_grades-04_replace_control_flag/src/main/java/tv/codely/student_grades/StudentGradeCalculator.java‎

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -30,26 +30,27 @@ public StudentGradeCalculator(final int yearToCalculate) {
3030
}
3131

3232
public float calculateGrades(final List<Pair<Integer, Float>> examsGrades, final boolean hasReachedMinimumClasses) {
33-
if (examsGrades.isEmpty()) {
33+
boolean hasNotDoneAnyExam = examsGrades.isEmpty();
34+
if (hasNotDoneAnyExam) {
3435
return 0f;
3536
}
3637

3738
if (!hasReachedMinimumClasses) {
3839
return 0f;
3940
}
4041

41-
ensureGradesWeightSumIs100percent(examsGrades);
42-
43-
float gradesSum = gradesSum(examsGrades);
42+
ensureGradesWeightsIsValid(examsGrades);
4443

4544
if (hasToIncreaseOneExtraPoint()) {
46-
return Float.min(10f, gradesSum + 1);
45+
float increasedGrade = gradesSum(examsGrades) + 1;
46+
47+
return Float.min(10f, increasedGrade);
4748
}
4849

49-
return gradesSum;
50+
return gradesSum(examsGrades);
5051
}
5152

52-
private void ensureGradesWeightSumIs100percent(List<Pair<Integer, Float>> examsGrades) {
53+
private void ensureGradesWeightsIsValid(List<Pair<Integer, Float>> examsGrades) {
5354
int gradesWeightSum = gradesWeightSum(examsGrades);
5455

5556
if (gradesWeightSum > 100) {
@@ -72,22 +73,21 @@ private int gradesWeightSum(List<Pair<Integer, Float>> examsGrades) {
7273
}
7374

7475
private boolean hasToIncreaseOneExtraPoint() {
75-
boolean hasToIncreaseOneExtraPoint = false;
76-
7776
for (Map.Entry<Integer, List<Pair<String, Boolean>>> yearlyTeachers : allYearsTeachers.entrySet()) {
78-
if (!(yearToCalculate != yearlyTeachers.getKey())) {
79-
List<Pair<String, Boolean>> teachers = yearlyTeachers.getValue();
80-
81-
for (Pair<String, Boolean> teacher : teachers) {
82-
if (teacher.second() != true) {
83-
continue;
84-
}
85-
hasToIncreaseOneExtraPoint = true;
86-
}
87-
} else {
77+
if (yearToCalculate != yearlyTeachers.getKey()) {
8878
continue;
8979
}
80+
81+
List<Pair<String, Boolean>> teachers = yearlyTeachers.getValue();
82+
83+
for (Pair<String, Boolean> teacher : teachers) {
84+
Boolean isBenevolent = teacher.second();
85+
if (isBenevolent) {
86+
return true;
87+
}
88+
}
9089
}
91-
return hasToIncreaseOneExtraPoint;
90+
91+
return false;
9292
}
9393
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /