num1:100
num2:200
result:300
100+200=300
이라는 출력식을 만드는 문장입니다
저거 마지막문단에 +존나많은건 " " 안에있는 기호 양옆으로 +라는 연산자를 두어서 그렇다는건 알겠는데
정작 ("num1:"+num1);
할때 " "는 기준이 어디인지 모르겠습니다
저게 출력식으로 num1:100 이라는 문장이 나온다는건데
"num1:" 를 하나로 잡고
+num1을 나머지 하나로 잡는건가요
그럼 출력식에 num1:+100 이 나와버릴것같은데..
어떻게 해석해야할지 몰겠습니다 형님들
- dc official App
"a"+"b" => "ab"
""안에 있는건 텍스트 판정
+100이 나오려면 "+"가 있어야겟지요?
와웅 ㄱㅅㄱㅅ - dc App
println("num1:"+"+"+100); 이렇게하니까 num1:+100 이란 문장이 출력되는걸 확인했고 이를 그대로 해석하면 "num1:" 이 문장은 양옆에 " "를 달아줬기때문에 텍스트 판정, 그대로 출력 그리고 +"+"+를 해줘서 +가 출력되게 해주고 그 뒤에 100이 붙어 결국 num1:+100 이렇게 나오는걸 이해했어요 - dc App
근데 이제 num1:+100 여기서 +를 지울거면 +"+"+ 이부분을 싹다 삭제하는게 맞지않나요? println("num1:"num1) 이렇게 근데 이러면 오류가뜨고 println("num1:"+num1) 이렇게 num1앞에 +을 붙여줘야 오류가 안뜨는데 그 이유가 뭔지궁금해요 - dc App
아..+100만들때 100넣어준게아니라 num1 넣어준건데 댓글잘못적음 - dc App
글을하나 더쓸게용 - dc App
""는 문자열을 의미하는거임 frintln에서 사용하면 그대로 출력 하겠단 의미고 + 역시도 마찬가지임
만약 " " 안달아주고 Sysem.out.pritln(num1+num2+"="+result) 해버리면 println 안에 수학 식이 있을시 그걸 계산해서 출력해버리기때문에 300=300이란 식이 나와버린다 때문에 계산하지 않고 그대로 출력시키기위해 num1+"+"+num2 이런식으로 만들어주는형태 이건 맞죠? - dc App
시스템아웃프린트 저부분 정확히적으면 서버에 연결할수없다고 댓글이안써져서 조금지웠음 - dc App
아 윗댓도그렇고 " " 안에있는건 텍스트판정이라는게 완전이해됐음 와 ㄱㅅㄱㅅ - dc App
ㅇㅇ println("1 + 1")이면 말 그대로 출력창에 1 + 1로 출력하겠단 거고 저 따옴표가 없으면 2로 출력됨 그리고 1 + "+" + 1에서 사용하는 +는 인트형과 그 뒤에 오는 "+"라는 문자형 즉 서로 다른 데이터 타입을 이어서 출력하겠다는 일종의 약속이라 생각하면 됨
인트형 +라는게 연산자인 + (출력식엔 나오지않고 자바에서 "+" 양옆에 붙여서 오류안뜨게 해주는역할) 이고 문자형 +가 실제 출력식에 나오는 + (자바상에선 "+") 이거죠? 이걸 +"+"+ 이렇게 이어줘야 출력창에서 계산안하고 100+200=300 이런식으로 뜨는거고 자바에서도 오류안뜨고 - dc App
1이 인트형이라 생각하고 "+"는 출력창에 + 그대로 출력되는 문자형임 1 + "+" 여기서 1 바로 뒤에 있는 +는 서로 다른 데이터 타입을 연결 시켜주는 역할만 하는것뿐임 만약 1"+"1이라고만 하면 무엇을 의미하는지 몰라서 오류나는거임
ㅇㅎ ㄱㅅㄱㅅ - dc App
1 + 1 이라고만 하면 (int)1 + (int)1 즉 인트 인트 데이터 타입이 같으니까 출력창은 2가 맞는데 (int)1 + (str)"+" 이건 인트 문자 데이터 타입이 다르니까 오류안나게 +로 서로 연결시키는 약속일뿐 저건 연산자도 아니고 출력창에도 안나옴 걍 자바 문법이 이런가보다 해