Code Exercise
package com.Hazel; public class Main { public static void main(String[] args) { int score = 1500; int scorePosition = calculateHighScorePosition(score); displayHighScorePosition("Hazel", scorePosition); score = 900; scorePosition = calculateHighScorePosition(score); displayHighScorePosition("Ryan", scorePosition); score = 400; scorePosition = calculateHighScorePosition(score); displayHighScorePosition("Sally", scorePosition); score = 50; scorePosition = calculateHighScorePosition(score); displayHighScorePosition("Shawn", scorePosition); } public static void displayHighScorePosition(String playerName, int scorePosition) { System.out.println(playerName + " managed to get into position " + scorePosition + " on the high score table."); } public static int calculateHighScorePosition(int score) { // if(score >= 1000) { // return 1; // } else if(score > 500 ) { // return 2; // } else if(score > 100) { // return 3; // } // return 4; // } int position = 4; if (score >= 1000) { position = 1; } else if (score > 500) { position = 2; } else if (score > 100) { position = 3; } return position; } }
주목할 만한 점은 마지막 메소드인
calculateHighScorePosition
의 코딩 방법이다. 나는 if else문을 사용해서 각 조건마다 return을 했는데, 그렇게 하지 않고position
이라는 변수를 하나 만들어서 return을 한 번만 줄 수도 있다. 리턴이 한 번이기 때문에 좀 더 깔끔해 보인다.