관리자 글쓰기

이 문제는 프로그래머스에서 제공된 문제를 풀이한 문제이며, 저작권은 프로그래머스에게 있습니다.

언어 : Java

문제번호 18번

문제 : 서울에서 김서방 찾기 

문제 설명

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

제한 사항
  • seoul은 길이 1 이상, 1000 이하인 배열입니다.
  • seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다.
  • "Kim"은 반드시 seoul 안에 포함되어 있습니다.
입출력 예시
seoul return
["Jane", "Kim"] "김서방은 1에 있다"

 

Solution.java

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;
    }
}

답안 도출과정

1.String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, 를 읽고

string 타입의 배열 seoul을 선언하고

2. string 타입으로 answer = "" ; 를 반환하도록 선언하고

3. 반복문 for문을 이용, 배열 seoul의 길이만큼 반복문 for 문을 돌리고

4. 조건문 if 문을 이용, 만약 seoul 배열에서 뽑은 i 의 값이 Kim 과 같으면 ( .equals() 사용) 

 if(seoul[i].equals("Kim")) {
                answer = "김서방은 " + i + "에 있다";
            }

5. answer 에 "   "김서방은" + i (seoul 배열에서 뽑은 i 값 ) + "에 있다" 를 입력

6. return answer  

answer로 리턴한다.

 

실행 메소드 추가

class Solution18 {
    public String solution18(String[] seoul) {
        String answer = "";

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

        return answer;
    }

    public static void main(String[] args) {
        Solution19 solution18 = new Solution18();
        String[] seoul  = {"Jane","Kim"};
        System.out.println(solution19.solution19(seoul));
    }
}