[프로그래머스/Java] 서울에서 김서방찾기

Moon·2022년 9월 16일
0
post-thumbnail

🙂 문제

Level 1 : 서울에서 김서방찾기

문제설명

String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.

제한 사항

  • seoul은 길이 1 이상, 1000 이하인 배열입니다.
  • seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다.
  • "Kim"은 반드시 seoul 안에 포함되어 있습니다.

💡풀이

class Solution {
    public String solution(String[] seoul) {
        String answer = "";
        
        for (int i = 0; i < seoul.length; i++) {
            if (seoul[i].equals("Kim")) {
                answer = "김서방은 "  + i + "에 있다";
            }
        }
        
        return answer;
    }
}

그냥 문제를 보고 바로 떠올린대로 for문을 사용해서 "Kim"이 들어있는지를 체크했다. 다른 답안들을 보니 향상된 for문을 사용하는 것이 성능 차이는 거의 없지만 가독성을 높일 수 있는 것 같아 작성해봤다.

int i = 0; 
for(String name : seoul) {
	if (name.eqauls("Kim")) {
		break;
    }
    i++;
}
return "김서방은 "  + i + "에 있다";

✨ equals 와 equalsIgnoreCase의 차이?

eqaulsIgnoreCase() 는 말 그대로 case를 ignore하고 equals검사를 한다. 대소문자에 관계없이 검사하기 때문에 A".equals("a")는 false지만 A.eqaulsIgnoreCase("a")는 true이다.

profile
매일 성장하는 개발자 되기😊

0개의 댓글