Skip to content

Commit 51c5672

Browse files
committed
[java] [student_grades] Extract method (guard clause)
1 parent a5ebb6c commit 51c5672

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

examples/java/java-student_grades-03_if_guard_clause/src/main/java/tv/codely/student_grades/StudentGradeCalculator.java

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,7 @@ public float calculateGrades(final List<Pair<Integer, Float>> examsGrades, final
3838
return 0f;
3939
}
4040

41-
int gradesWeightSum = gradesWeightSum(examsGrades);
42-
43-
if (gradesWeightSum > 100) {
44-
throw new GradesWeightOverMaxException();
45-
} else if (gradesWeightSum < 100) {
46-
throw new GradesWeightBelowMinException();
47-
}
41+
ensureGradesWeightSumIs100percent(examsGrades);
4842

4943
float gradesSum = gradesSum(examsGrades);
5044

@@ -55,6 +49,16 @@ public float calculateGrades(final List<Pair<Integer, Float>> examsGrades, final
5549
return gradesSum;
5650
}
5751

52+
private void ensureGradesWeightSumIs100percent(List<Pair<Integer, Float>> examsGrades) {
53+
int gradesWeightSum = gradesWeightSum(examsGrades);
54+
55+
if (gradesWeightSum > 100) {
56+
throw new GradesWeightOverMaxException();
57+
} else if (gradesWeightSum < 100) {
58+
throw new GradesWeightBelowMinException();
59+
}
60+
}
61+
5862
private float gradesSum(List<Pair<Integer, Float>> examsGrades) {
5963
float gradesSum = 0f;
6064
for (Pair<Integer, Float> examGrade : examsGrades) {

0 commit comments

Comments
 (0)