작성
·
175
0
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)
[질문 내용]
문제2에서 AuthGradeMain1 클래스를 만들어서 코드를 작성하는 과정에서 for문 안에서 바로 출력을 하는 코드를 작성하셨는데, EnumRefMain3_4에서
public static void main(String[] args) {
int price = 10000;
Grade[] grades = Grade.values();
for (Grade grade : grades) {
printDiscount(grade, price);
}
}
private static void printDiscount(Grade grade, int price) {
System.out.println(grade.name() + " 등급의 할인 금액 : " + grade.discount(price));
}
따로 print 메서드를 뽑아서 리팩토링 하셔서 제가 스스로 AuthGradeMain1 풀이할 때에도
public static void main(String[] args) {
AuthGrade[] grades = AuthGrade.values();
for (AuthGrade grade : grades) {
printAuthGrade(grade);
}
}
private static void printAuthGrade(AuthGrade authGrade) {
System.out.println("grade = " + authGrade + ", level = " + authGrade.getLevel() + ", 설명 = " + authGrade.getDescription());
}
이런 식으로 메서드를 뽑아서 풀었습니다. 결과는 결국 똑같이 나오겠지만 메서드를 뽑아서 print하는 코드와 for문에서 직접 print하는 코드 둘 중 어느 걸 사용하는 것이 좋은 건지 어떻게 알 수 있는 걸까요?