-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
toString과 String,valueOf
22.06.23 21:01 작성 조회수 221
0
public String solution(String str) {
String answer;
char[] s = str.toCharArray();
int lt = 0, rt = s.length - 1;
while (lt < rt) {
if (!Character.isAlphabetic(s[lt]))
lt++;
else if (!Character.isAlphabetic(s[rt]))
rt--;
else {
char tmp = s[lt];
s[lt] = s[rt];
s[rt] = tmp;
lt++;
rt--;
}
}
answer = String.valueOf(s);
//answer=s.toString();
return answer;
}
위의 코드에서
answer = String.valueOf(s)와
주석처리한 answer=s.toString이 어떤 차이점이 있을까요??
두 코드 다 s를 스트링으로 바꿔서 answer에 넣어주는거라 생각했는데 주석처리한 코드로 제출하면 오답이라도 나오네요
답변을 작성해보세요.
0
drd9811
2022.06.29
추가로 toString() 을 재정의하여 사용한다 가정했을 때
toString()은 null일 때 NullPointerException 을 발생시키고
String.valueOf()는 null 이라는 문자열로 처리합니다.
0
밤의멜로디
2022.06.26
그냥 지나가다 답변 남깁니다만....
Object 클래스 공부를 다시 하셔야 할 듯 합니다.
기본적으로 toString()은 Object의 메소드라서 재정의를 해 주지 않으면 Object의 메소드가 호출 됩니다.
아마 캐릭터 배열의 주소값이 나왔겠네요.
답변 2