[Java] 자바 리터럴과 연산 처리

jiyoungdev·2025년 5월 20일

📌 본 글은 신세계 I&C 부트캠프에서 학습한 내용을 바탕으로 정리한 글입니다.

🎯 학습 목표

  • ✅ 자바에서 사용되는 다양한 리터럴(literal) 종류 이해하기
  • 오칙연산(+, -, , /, %) 사용법 익히기
  • 문자와 문자열 간의 차이와 연산 방식 이해
  • 문자열 연결 연산의 동작 순서를 파악하기

🧱 1. 리터럴(Literal)이란?

프로그램 코드에 직접 입력된 고정된 값을 의미합니다.

📌 예시

타입예시설명
정수123, -99정수형 리터럴
실수3.14실수형 리터럴
문자'a'문자 하나는 홑따옴표로 감싼다
문자열"안녕"여러 글자 가능, 쌍따옴표 사용
논리값true, false논리형 리터럴

💡 '1'은 문자, 1은 숫자입니다. 'ab'는 에러입니다!


🔢 2. 오칙연산 실습

System.out.println(123 + 456); // 579
System.out.println(123 - 456); // -333
System.out.println(123 * 10);  // 1230
System.out.println(123 / 10);  // 12
System.out.println(123 % 10);  // 3

📌 포인트

  • 정수끼리 연산 → 결과도 정수
  • 실수와 연산하면 결과는 실수
  • %나머지 연산자

🧠 3. 문자, 문자열, 숫자의 연산 차이

문자끼리의 연산

System.out.println('a' + 'b'); // 195 → ASCII 코드로 변환되어 덧셈

문자열과 숫자

System.out.println("hello" + 123);  // "hello123"
System.out.println(9 + 9 + "9");    // "189"
System.out.println(9 + "9" + 9);    // "999"
System.out.println("9" + 9 + 9);    // "999"

🔍 자바는 "문자열" + 값이 오면 자동으로 문자열로 변환해서 이어붙입니다.
계산 순서를 잘 따져야 예상한 결과가 나와요!


🚫 연산 불가능한 예시들

  • "hello" - "world" → ❌
  • true + false → ❌

논리값은 산술 연산이 불가능합니다. 문자열은 덧셈(+)만 허용돼요!


🎲 실습으로 이해하는 혼합 연산

System.out.println("기차" + 10 + 20);       // "기차1020"
System.out.println("기차" + (10 + 20));     // "기차30"
System.out.println('a' + 'b' + "김밥");     // "195김밥"
System.out.println("김밥" + 'a' + 'b');     // "김밥ab"

순서에 따라 완전히 다른 결과! 괄호로 우선순위를 조절할 수 있습니다.


📌 마무리 요약

항목설명
리터럴코드에 직접 작성된 고정된 값 (123, 'a', "문자열")
오칙연산숫자/문자에 적용 가능 (+ - * / %)
문자열 연산+만 가능, 나머지는 에러
논리 연산산술 연산 불가
출력 순서왼쪽부터 오른쪽으로, 괄호로 우선순위 조정 가능

✍️ 이 글은 제가 공부하며 직접 정리한 내용입니다.
필요하신 분들과 자유롭게 공유하셔도 좋지만,
출처는 꼭 함께 남겨주시면 감사하겠습니다 :)

🔗 출처: jiyoungdev.log


📄 본 글은 CC BY-NC-ND 4.0 라이선스에 따라 보호됩니다.

저작자 표시 ✧ 비영리 ✧ 변경금지

CC License

profile
"꼼꼼하다, 믿음이 간다"는 말을 자주 듣는 개발자

0개의 댓글