iloveyouboss_01/src/iloveyouboss/ScoreCollection.java
package iloveyouboss; import java.util.*; public class ScoreCollection { private List<Scoreable> scores = new ArrayList<>(); public void add(Scoreable scoreable) { scores.add(scoreable); } public int arithmeticMean() { int total = scores.stream().mapToInt(Scoreable::getScore).sum(); return total / scores.size(); } }
ScoreCollection 클래스의 add() 메서드는 Scoreable 인스턴스를 인자로 받습니다. Scoreable 객체는 간단히 int형의 score 값을 반환합니다.
편하게 소스 코드를 개발 환경에 입력해 보세요. 길벗출판사의 깃허브(https://github.com/gilbutITbook/006814)에서도 내려받을 수 있습니다. 우리는 개인적으로 자바에 있는 람다처럼 재미있다고 생각되는 것을 배우고 있습니다. 따라서 예제 코드를 스스로 입력해 보세요. 단지 복사해서 붙여 넣는 것보다는 입력해 보는 것이 훨씬 도움이 될 것입니다.