scjp 공부하는데요 질문점~
영글
2023.04.01
헷갈리는게 있네요.
스트링 문자열을 출력할때 숫자 문자인데요.
일단 두 문제가 있습니다.
Question
Strings = Hello + 9 + 1 ;
System.out.println =(s);
What is the result?
A. Hello91
Question
Strings =1 +9 + Hello;
System.out.println =(s);
What is the result?
A. 10Hello
어째서 첫번째 문제는 Hello10 이 아닌 Hello91 문자 그대로 입력이 되는데 두번째 문제는 앞에 1+9가 10으로 더해져서 10Hello가 되는지요?
19Hello가 되지 않는 이유는??
-
모두다
묵시적 형변환이 일어나는 거군요. 감사합니다.
-
일본드립
역시 셤문제는 은근 헤깔리는게 잘나오는듯..;
-
꽃가을
수학에서도 + 하면 앞에서 부터 차례대로 더해지자나요..
위에 \Hello\ 라는 String 과 더해야 하기 때문에 바로 형변환이 되는거고
아래는 1+9 한다음 String으로 형변환이 되서 그런거 아닐까요? 언제 형변환이 되느냐의 차이죠.
만약 19Hello 로 만들고 싶으면 Strings = \\+ 1 + 9 + \Hello\; 하면 될듯.