πŸͺJava

[Java] μžλ°”μ˜ λ‹€μ–‘ν•œ μ—°μ‚°μžλ“€

루리야ㅑ 2024. 2. 5. 22:45
λ°˜μ‘ν˜•

Javaμ—λŠ” λ‹€μ–‘ν•œ μ—°μ‚°μžκ°€ μžˆλ‹€.
μ‚°μˆ μ—°μ‚°μž, ν• λ‹Ή μ—°μ‚°μž, 증가/κ°μ†Œ μ—°μ‚°μž, 관계 μ—°μ‚°μž, 논리 μ—°μ‚°μž, λΉ„νŠΈ μ—°μ‚°μž, μ‚Όν•­ μ—°μ‚°, instanceof μ—°μ‚°μž.

 

1. μ‚°μˆ μ—°μ‚°μž

μ‚°μˆ  μ—°μ‚°μžλŠ” 기본적인 μˆ˜ν•™μ  연산을 μˆ˜ν–‰ν•œλ‹€.
이 μ—°μ‚°μžλ“€μ€ μˆ«μžν˜• λ³€μˆ˜ λ˜λŠ” λ¦¬ν„°λŸ΄ 간에 μ‚¬μš©λœλ‹€.

  • + (λ§μ…ˆ): 두 값을 λ”ν•œλ‹€.
  • - (λΊ„μ…ˆ): 였λ₯Έμͺ½ 값을 μ™Όμͺ½ κ°’μ—μ„œ λΊ€λ‹€.
  • * (κ³±μ…ˆ): 두 값을 κ³±ν•œλ‹€.
  • / (λ‚˜λˆ—μ…ˆ): μ™Όμͺ½ 값을 였λ₯Έμͺ½ κ°’μœΌλ‘œ λ‚˜λˆˆλ‹€.
  • % (λ‚˜λ¨Έμ§€): μ™Όμͺ½ 값을 였λ₯Έμͺ½ κ°’μœΌλ‘œ λ‚˜λˆˆ λ‚˜λ¨Έμ§€λ₯Ό λ°˜ν™˜ν•œλ‹€.
int a = 5;
int b = 2;
int sum = a + b;    // 7
int difference = a - b; // 3
int product = a * b; // 10
int quotient = a / b; // 2
int remainder = a % b; // 1

 

2. ν• λ‹Ή μ—°μ‚°μž

ν• λ‹Ή μ—°μ‚°μžλŠ” λ³€μˆ˜μ— 값을 ν• λ‹Ήν•œλ‹€.

  • = (ν• λ‹Ή): 우츑 값을 쒌츑 λ³€μˆ˜μ— ν• λ‹Ή.
int x = 10;

 

3. 증가/κ°μ†Œ μ—°μ‚°μž

이 μ—°μ‚°μžλ“€μ€ λ³€μˆ˜μ˜ 값을 1μ”© 증가 λ˜λŠ” κ°μ†Œμ‹œν‚¨λ‹€.

  • ++ (1 증가): λ³€μˆ˜μ˜ 값을 1 μ¦κ°€μ‹œν‚¨λ‹€.
  • -- (1 κ°μ†Œ): λ³€μˆ˜μ˜ 값을 1 κ°μ†Œμ‹œν‚¨λ‹€.
int a = 5;
a++; // aλŠ” 이제 6
a--; // aλŠ” 이제 5

 

4.관계 μ—°μ‚°μž

관계 μ—°μ‚°μžλŠ” 두 값을 λΉ„κ΅ν•˜μ—¬ 논리적인 관계λ₯Ό ν‰κ°€ν•œλ‹€.

  • == (동일): 두 값이 λ™μΌν•˜λ©΄ true, μ•„λ‹ˆλ©΄ false.
  • != (λΆ€λ“±): 두 값이 λ‹€λ₯΄λ©΄ true, μ•„λ‹ˆλ©΄ false.
  • < (μž‘λ‹€), > (크닀): μ™Όμͺ½ 값이 였λ₯Έμͺ½ 값보닀 μž‘κ±°λ‚˜ 크면 true, μ•„λ‹ˆλ©΄ false.
  • <= (μž‘κ±°λ‚˜ κ°™λ‹€), >= (ν¬κ±°λ‚˜ κ°™λ‹€): μ™Όμͺ½ 값이 였λ₯Έμͺ½ 값보닀 μž‘κ±°λ‚˜ κ°™κ±°λ‚˜ ν¬κ±°λ‚˜ κ°™μœΌλ©΄ true, μ•„λ‹ˆλ©΄ false.
int x = 5;
int y = 10;
boolean isEqual = (x == y); // false

 

5. λ…Όλ¦¬μ—°μ‚°μž

논리 μ—°μ‚°μžλŠ” 논리적인 쑰건을 ν‰κ°€ν•œλ‹€.

  • && (논리 AND): μ–‘μͺ½ ν”Όμ—°μ‚°μžκ°€ λͺ¨λ‘ true이면 true, μ•„λ‹ˆλ©΄ false.
  • || (논리 OR): μ–‘μͺ½ ν”Όμ—°μ‚°μž 쀑 ν•˜λ‚˜ 이상이 true이면 true, μ•„λ‹ˆλ©΄ false.
  • ! (논리 NOT): ν”Όμ—°μ‚°μžμ˜ 논리 μƒνƒœλ₯Ό λ°˜μ „μ‹œν‚¨λ‹€.
boolean condition1 = true;
boolean condition2 = false;
boolean result = condition1 && condition2; // false

 

6. λΉ„νŠΈ μ—°μ‚°μž

λΉ„νŠΈ μ—°μ‚°μžλŠ” μ΄μ§„μˆ˜ λΉ„νŠΈ λ‹¨μœ„λ‘œ 연산을 μˆ˜ν–‰ν•œλ‹€.

  • & (λΉ„νŠΈ AND): 각 λΉ„νŠΈμ˜ AND μ—°μ‚°.
  • | (λΉ„νŠΈ OR): 각 λΉ„νŠΈμ˜ OR μ—°μ‚°.
  • ^ (λΉ„νŠΈ XOR): 각 λΉ„νŠΈμ˜ XOR μ—°μ‚°.
  • ~ (λΉ„νŠΈ NOT): 각 λΉ„νŠΈλ₯Ό λ°˜μ „μ‹œν‚¨λ‹€.
  • << (μ™Όμͺ½ μ‹œν”„νŠΈ): 각 λΉ„νŠΈλ₯Ό μ™Όμͺ½μœΌλ‘œ μ΄λ™μ‹œν‚¨λ‹€.
  • >> (였λ₯Έμͺ½ μ‹œν”„νŠΈ): 각 λΉ„νŠΈλ₯Ό 였λ₯Έμͺ½μœΌλ‘œ μ΄λ™μ‹œν‚¨λ‹€.
  • >>> (λΆ€ν˜Έ μ—†λŠ” 였λ₯Έμͺ½ μ‹œν”„νŠΈ): μ™Όμͺ½ λΉ„νŠΈλ₯Ό 0으둜 μ±„μš°λ©° 였λ₯Έμͺ½μœΌλ‘œ μ΄λ™μ‹œν‚¨λ‹€.
int a = 5; // μ΄μ§„μˆ˜: 0000 0101
int b = 3; // μ΄μ§„μˆ˜: 0000 0011
int result = a & b; // λΉ„νŠΈ AND: 0000 0001 (1)

 

7. μ‚Όν•­ μ—°μ‚°μž

μ‚Όν•­ μ—°μ‚°μžλŠ” 쑰건에 따라 값을 μ„ νƒμ μœΌλ‘œ ν• λ‹Ήν•œλ‹€.

  • ? : (쑰건식 ? 참일 λ•Œ κ°’ : 거짓일 λ•Œ κ°’): 쑰건식이 참이면 참일 λ•Œ κ°’, 그렇지 μ•ŠμœΌλ©΄ 거짓일 λ•Œ κ°’.
int x = 5;
int y = 10;
int max = (x > y) ? x : y; // yκ°€ 더 ν¬λ―€λ‘œ maxλŠ” 10

 

8. instanceof μ—°μ‚°μž

instanceof μ—°μ‚°μžλŠ” 객체의 νƒ€μž…μ„ ν™•μΈν•œλ‹€.

  • instanceof: 객체가 νŠΉμ • ν΄λž˜μŠ€λ‚˜ μΈν„°νŽ˜μ΄μŠ€μ˜ μΈμŠ€ν„΄μŠ€μΈμ§€ 확인.
Object obj = "Hello";
boolean isString = (obj instanceof String); // true
λ°˜μ‘ν˜•