코테/프로그래머스

[프로그래머스/Lv. 0] 가위 바위 보

imname1am 2023. 2. 7. 10:42
반응형

내 코드 (틀림)

class Solution {
    public String solution(String rsp) {
        String answer = "";
        
        for(int i=0 ; i < rsp.length() ; i++) {
            if((rsp.charAt(i)).equals("2"))      answer += "0";
            else if((rsp.charAt(i)).equals("0")) answer += "5";
            else if((rsp.charAt(i)).equals("5")) answer += "2";
        }
        
        return answer;
    }
}

char cannot be deferenced 에러가 떴다.

 

한 글자씩 char로 뽑아온 글자를 String으로 변환하는 방법을 찾아봤고, (char → String)

String.valueOf()를 사용했다.

 

[Java] String < - > char 변환 총 정리

1.String to char (String -> char) 1-1.charAt() 이용하기 문법 String input = "안녕하세요"; char c = input.charAt(인덱스); 실전 예시 String krstr = "안녕하세요"; char c = krstr.charAt(0); System.out.println(c); 결과 : 안 실전 예

java119.tistory.com

 

내 코드 (정답)

class Solution {
    public String solution(String rsp) {
        String answer = "";
        
        for(int i=0 ; i < rsp.length() ; i++) {
            if(String.valueOf(rsp.charAt(i)).equals("2"))      answer += "0";
            else if(String.valueOf(rsp.charAt(i)).equals("0")) answer += "5";
            else if(String.valueOf(rsp.charAt(i)).equals("5")) answer += "2";
        }
        
        return answer;
    }
}

그 결과, 맞았다!

String.valueOf를 잊지 말자.. (char을 String으로)


다른 코드

class Solution {
    public String solution(String rsp) {
        String answer = "";

        for(int i=0; i < rsp.length(); i++){
            char c = rsp.charAt(i);
            if(c == '2')      answer+='0';
            else if(c == '0') answer+='5';
            else 		    answer+='2';
        }

        return answer;
    }
}

String.valueOf(rsp.charAt(i)).equals("2")

rsp.charAt(i) == '2' 로 해줘도 됐네,,,

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

반응형