🛫 Programmers School에서 가위 바위 보 문제를 푸는 과정에서 알게 된 개념 정리
"" -> String을 감싸줄때 사용하는 것으로 "" 사이에 문자열 넣을 수 있음
'' -> Char을 감싸줄때 사용하는 것으로 '' 사이에 한 단어 넣을 수 있음
class Solution {
public String solution(String rsp) {
String answer = "";
if (0<rsp.length() && rsp.length()<=100){
for (int i=0; i<rsp.length(); i++){
if (rsp.charAt(i)=='0') answer+='5';
else if (rsp.charAt(i)=='2') answer+='0';
else answer+='2';
}
}
return answer;
}
}
처음에 아래 코드로 작성했는데 '2'라는 값을 넣었을때 2가 출력되어 틀렸다고 했다.
if (rsp.charAt(i)==0) answer+='5';
else if (rsp.charAt(i)==2) answer+='0';
else answer+='2';
비교시에 따옴표를 추가하지 않은 것 같아 ""으로 감싸줬다.
하지만 오류 발생 👇
/Solution.java:6: error: bad operand types for binary operator '=='
if (rsp.charAt(i)=="0") answer+='5';
^
first type: char
second type: String
/Solution.java:7: error: bad operand types for binary operator '=='
else if (rsp.charAt(i)=="2") answer+='0';
^
first type: char
second type: String
2 errors
원인은 charAt으로 가져온 단어가 char형이기 때문에 ""가 아닌 ''로 감싸줘야했음