# [Java] ๊ธฐ๋ณธ์ ์ธ ๋ฌธ๋ฒ•๋“ค - ์ž๋ฃŒํ˜•, ์ƒ์ˆ˜, ๋ฆฌํ„ฐ๋Ÿด์— ๋Œ€ํ•ด
Study Repository

[Java] ๊ธฐ๋ณธ์ ์ธ ๋ฌธ๋ฒ•๋“ค - ์ž๋ฃŒํ˜•, ์ƒ์ˆ˜, ๋ฆฌํ„ฐ๋Ÿด์— ๋Œ€ํ•ด

by rlaehddnd0422

๊ธฐ๋ณธ์ ์ธ ๋ฌธ๋ฒ•๋“ค ์ค‘ ์‚ฌ์†Œํ•˜๊ฑฐ๋‚˜ ์›๋ฆฌ ์—†์ด ๋‹น์—ฐํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋˜ ๊ฒƒ๋“ค ์œ„์ฃผ๋กœ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

 

1. ๋ณ€์ˆ˜์˜ ํ˜•์‹(์ž๋ฃŒํ˜•)

๊ธฐ๋ณธํ˜•

๊ธฐ๋ณธํ˜•์—๋Š” ๋…ผ๋ฆฌํ˜•, ๋ฌธ์žํ˜•, ์ •์ˆ˜ํ˜•, ์‹ค์ˆ˜ํ˜•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋…ผ๋ฆฌํ˜• - boolean (C์—์„œ๋Š” bool๋กœ ์‚ฌ์šฉํ–ˆ์ง€๋งŒ, Java์—์„œ๋Š” boolean์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.)
  • ๋ฌธ์žํ˜• - char
  • ์ •์ˆ˜ํ˜• - byte, short, int, long 
  • ์‹ค์ˆ˜ํ˜• - double, float 

 

  • Spring ์„ ๋‹ค๋ฃฐ ๋•Œ์—๋Š” int, double, long ๋Œ€์‹  Integer, Double, Long์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ int์™€ Integer๋Š” ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅผ๊นŒ?

int๋Š” ์ž๋ฃŒํ˜•(primitive type, ๋ณ€์ˆ˜์˜ ํƒ€์ž…์œผ๋กœ '๋ณ€์ˆ˜'๋Š” '๊ฐ’์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ƒ์˜ ๊ณต๊ฐ„'์„ ์˜๋ฏธ)์œผ๋กœ  ์‚ฐ์ˆ˜์—ฐ์‚ฐ์ด ๊ฐ€๋Šฅํ•˜๊ณ  null๋กœ ์ดˆ๊ธฐํ™”๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, Integer์€ wrapper class๋กœ Integer์— ํ• ๋‹นํ•œ ๊ฐ’์„ Unboxingํ•˜์ง€ ์•Š์„ ์‹œ์—๋Š” ์—ฐ์‚ฐ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ณ , null๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

boxing : primitive type โžก๏ธ wrapper class ๋ณ€ํ™˜ ( int to Integer )
unboxing : wrapper class โžก๏ธ primitive type ๋ณ€ํ™˜ ( Integer to int )
public class WrapperTest {
    public static void main(String[] args) {
        Long value1 = Long.valueOf(1); // long to Long (Boxing)
        Long value2 = Long.valueOf(2); // long to Long (Boxing)
        long value3 = null; // null ์ดˆ๊ธฐํ™” ๋ถˆ๊ฐ€๋Šฅ 
        Long value4 = null; // null ์ดˆ๊ธฐํ™” ๊ฐ€๋Šฅ
        System.out.println("value1 = " + value1 + value2);
    }
}

 

์ฐธ์กฐํ˜•

๊ธฐ๋ณธํ˜•์„ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ํƒ€์ž…์€ ์ฐธ์กฐํ˜• ๋ณ€์ˆ˜๋กœ ํด๋ž˜์Šค์˜ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ํด๋ž˜์Šค์˜ ์ด๋ฆ„์ด ์ฐธ์กฐ๋ณ€์ˆ˜์˜ ํƒ€์ž…์ด ๋ฉ๋‹ˆ๋‹ค. (๋”ฐ๋ผ์„œ String๋„ ์ฐธ์กฐํ˜•ํƒ€์ž…)

๋”ฐ๋ผ์„œ ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์–ด๋–ค ์˜๋ฏธ์—์„œ ์ฐธ์กฐ๋ณ€์ˆ˜ํ˜•์„ ์ถ”๊ฐ€ํ•˜๋Š” ์…ˆ์ž…๋‹ˆ๋‹ค.

ํด๋ž˜์Šค์ด๋ฆ„ ๋ณ€์ˆ˜์ด๋ฆ„;

 

๋ณ€์ˆ˜ Naming ๊ทœ์น™

  • ๋Œ€์†Œ๋ฌธ์ž๊ฐ€ ๊ตฌ๋ถ„๋˜๋ฉฐ ๊ธธ์ด์— ์ œํ•œ์ด ์—†์Šต๋‹ˆ๋‹ค.
    • ์ฆ‰, int a์™€ int A๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.
  • Java์— ์˜ˆ์•ฝ์–ด๋กœ ๋“ฑ๋ก๋œ ๊ฒƒ๋“ค์€ ๋ณ€์ˆ˜ ์ด๋ฆ„์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. 
    • ์˜ˆ์•ฝ์–ด์—๋Š” if, do, double, try, void, abstract, extends ๋“ฑ์ด ์žˆ์Œ.
    • ์˜ˆ์•ฝ์–ด์— ๋Œ€ํ•œ ์ถ”๊ฐ€์ •๋ณด๋Š” ์ฐธ๊ณ ์ž๋ฃŒ๋ฅผ ์ฐธ๊ณ 
  • ์ˆซ์ž๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
    • ex) int 1abc, int 9sp (X)
  • ํŠน์ˆ˜๋ฌธ์ž๋Š” '_'์™€ '$'๋งŒ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
    • ex) int $uper (O), int _$3 (O), int #a (X), int ^3^(X)
  • ํ•œ๊ธ€๋„ ๋ณ€์ˆ˜์ด๋ฆ„์œผ๋กœ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ex) int ์•ˆ๋…• (O)

 

2. ์ƒ์ˆ˜(Constant)

์ƒ์ˆ˜๋Š” ๋ณ€์ˆ˜์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๊ฐ’์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐ„์ด์ง€๋งŒ ํ•œ ๋ฒˆ ๊ฐ’์„ ์ €์žฅํ•˜๋ฉด ๋ณ€๊ฒฝ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ƒ์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ณ€์ˆ˜์™€ ๋™์ผํ•˜๋˜, ํƒ€์ž… ์•ž์— final ํ‚ค์›Œ๋“œ๋งŒ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์„ ์–ธ๊ณผ ๋™์‹œ์— ๊ฐ’์„ ์ €์žฅํ•˜์ง€ ์•Š์œผ๋ฉด ์ปดํŒŒ์ผ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

public class ConstantTest {
    public static void main(String[] args) {
        final Long a = 1L;
        final Long b; 
        System.out.println("b = " + b);
    }
}

  • final ํ‚ค์›Œ๋“œ๋Š” ๋ณ€์ˆ˜(variable), ๋ฉ”์„œ๋“œ(method), ๋˜๋Š” ํด๋ž˜์Šค(class)์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ๊ณณ์— ์‚ฌ์šฉํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€์ง€๋งŒ ๊ณตํ†ต์ ์œผ๋กœ ๋ฌด์–ธ๊ฐ€๋ฅผ ์ œํ•œํ•œ๋‹ค๋Š” ์ ์€ ๊ณตํ†ต์ ์ž…๋‹ˆ๋‹ค.
๋ฉ”์†Œ๋“œ์— final ํ‚ค์›Œ๋“œ๋ฅผ ๋ถ™์ด๋ฉด override๋ฅผ ์ œํ•œ.
๋ณ€์ˆ˜์— final ํ‚ค์›Œ๋“œ๋ฅผ ๋ถ™์ด๋ฉด ๋ณ€๊ฒฝ ์ œํ•œ.
ํด๋ž˜์Šค์— final ํ‚ค์›Œ๋“œ๋ฅผ ๋ถ™์ด๋ฉด ์ƒ์† ์ œํ•œ. 

 

์ƒ์ˆ˜ Naming ๊ทœ์น™

์œ„์—์„œ๋Š” ์†Œ๋ฌธ์ž๋กœ ์‚ฌ์šฉํ–ˆ์ง€๋งŒ ์ผ๋ฐ˜์ ์œผ๋กœ ์ƒ์ˆ˜ ์ด๋ฆ„์€ ๋ชจ๋‘ ๋Œ€๋ฌธ์ž๋กœ ํ•˜๊ณ , ์—ฌ๋Ÿฌ ๋‹จ์–ด๋กœ ์ด๋ฃจ์–ด์ง„ ๊ฒฝ์šฐ _๋กœ ๊ตฌ๋ถ„ํ•˜๋Š”๊ฒŒ ๊ฐœ๋ฐœ์ž๋“ค ์‚ฌ์ด์˜ ์•”๋ฌต์  ์•ฝ์†์ž…๋‹ˆ๋‹ค. 

 

3. ๋ฆฌํ„ฐ๋Ÿด(Literal)

๊ฐ’ ์ž์ฒด๋ฅผ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ. ์‰ฝ๊ฒŒ ๋งํ•ด final Long A_VALUE = 1L;์—์„œ 1L์ด ๋ฆฌํ„ฐ๋Ÿด.

์ƒ์ˆ˜์™€ ๋ฆฌํ„ฐ๋Ÿด์€ ๋ฐ€์ ‘ํ•œ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. 

 

๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ๋ฆฌํ„ฐ๋Ÿด ๊ฐ’์„ ์—ฌ๋Ÿฌ๊ตฐ๋ฐ์—์„œ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋ด…์‹œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ด ๋ฆฌํ„ฐ๋Ÿด ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ๋ฆฌํ„ฐ๋Ÿด์„ ์‚ฌ์šฉํ•œ ๋ชจ๋“  ๊ณณ์„ ์ฐพ์•„ ์ผ์ผ์ด ๋ชจ๋‘ ๋ณ€๊ฒฝํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ƒ์ˆ˜๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด ์ƒ์ˆ˜์— ๊ฐ’์„ ์ €์žฅํ•œ ๋ถ€๋ถ„๋งŒ ๋ฐ”๊ฟ”์ฃผ๋ฉด ๋ชจ๋“  ๊ฒƒ์ด ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

 

  • ์ƒ์ˆ˜๊ฐ€ ์•„๋‹ˆ์—ฌ๋„ ์ƒ๊ด€์—†์ง€ ์•Š๋‚˜?
    • final ํ‚ค์›Œ๋“œ๋ฅผ ๋นผ๊ณ  ์ƒ์ˆ˜๋กœ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ  ์‚ฌ์šฉํ•ด๋„ ๋˜์ง€ ์•Š๋‚˜๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์‚ฌ์šฉ ๋„์ค‘ ์ž‘์„ฑํ•œ ์ฝ”๋“œ์— ์˜ํ•ด ์˜๋„์น˜ ์•Š๊ฒŒ ๊ฐ’์ด ๋ฐ”๋€Œ์–ด๋ฒ„๋ฆฌ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์‚ฌ์šฉ๋„์ค‘ ๊ฐ’์ด ๋ฐ”๋€๋‹ค๋ฉด ์ปดํŒŒ์ผ ์‹œ์ ์— ์ด๊ฑธ ๋ˆˆ์น˜์ฑ„๊ณ  ์•Œ๋ ค์ฃผ๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌํ„ฐ๋Ÿด์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ƒ์ˆ˜ํ™”ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค. 

 

๋ฆฌํ„ฐ๋Ÿด ์ ‘๋ฏธ์‚ฌ 

  • int์™€ long์˜ ๋ฆฌํ„ฐ๋Ÿด์„ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด ์ •์ˆ˜ํ˜•์˜ longํƒ€์ž…์˜ ๋ฆฌํ„ฐ๋Ÿด์—๋Š” ์ ‘๋ฏธ์‚ฌ 'l(์†Œ๋ฌธ์ž L)'๋˜๋Š” 'L'์„ ๋ถ™์ž…๋‹ˆ๋‹ค.
  • double๊ณผ float์˜ ๋ฆฌํ„ฐ๋Ÿด์„ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด doubleํ˜•์—๋Š” ๋์— d๋ฅผ ๋ถ™์ด๊ณ , floatํ˜•์—๋Š” ๋์— f๋ฅผ ๋ถ™ํ˜€ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ถ™์ด์ง€ ์•Š์€ ๊ฒฝ์šฐ๋Š” doubleํ˜•์œผ๋กœ ๊ฐ„์ฃผํ•˜๊ธฐ ๋•Œ๋ฌธ์—, float ์ž๋ฃŒํ˜•์— ์ ‘๋ฏธ์‚ฌ๋ฅผ ๋ถ™์ด์ง€ ์•Š์œผ๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
      • ex) float pi = 3.14; // error
public class LiteralTest0 {
    public static void main(String[] args) {
        long a = 1L;
        double d = 0.1d;
        float f = 0.11f;
        System.out.println("a = " + a);
        System.out.println("d = " + d);
        System.out.println("f = " + f);
    }
}
  • + 10์ง„์ˆ˜ ์™ธ์—๋„ 2,8,16์ง„์ˆ˜๋กœ ํ‘œํ˜„๋œ ๋ฆฌํ„ฐ๋Ÿด์„ ๋ณ€์ˆ˜์— ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
public class LiteralTest {
    public static void main(String[] args) {
        long big = 010; // 8์ง„์ˆ˜ 10 -> 10์ง„์ˆ˜ 8
        long hexNum = 0x10; // 16์ง„์ˆ˜ 10 -> 10์ง„์ˆ˜ 16
        long binNum = 0b11; // 2์ง„์ˆ˜ 11 - > 10์ง„์ˆ˜ 3
        System.out.println("big = " + big);
        System.out.println("hexNum = " + hexNum);
        System.out.println("binNum = " + binNum);
    }
}
  • 16์ง„์ˆ˜๋ผ๋Š” ๊ฒƒ์„ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๋ฆฌํ„ฐ๋Ÿด ์•ž์— '0x'๋‚˜ '0X'๋ฅผ ๋ถ™์ด๊ณ 
  • 8์ง„์ˆ˜๋ผ๋Š” ๊ฒƒ์„ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๋ฆฌํ„ฐ๋Ÿด ์•ž์— '0'์„ ๋ถ™์ด๊ณ ,
  • 2์ง„์ˆ˜๋ผ๋Š” ๊ฒƒ์„ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๋ฆฌํ„ฐ๋Ÿด ์•ž์— '0b'๋ฅผ ๋ถ™์ž…๋‹ˆ๋‹ค.
public class LiteralDelimiterTest {
    public static void main(String[] args) {
        long big = 100_000_000_000L;
        long hex = 0xFFFF_FFFF_FFFFL;
        System.out.println("big = " + big);
        System.out.println("hex = " + hex);
    }
}
Tip : JDK 1.7๋ถ€ํ„ฐ๋Š” ์ •์ˆ˜ํ˜• ๋ฆฌํ„ฐ๋Ÿด ์ค‘๊ฐ„์— ๊ตฌ๋ถ„์ž _๋ฅผ ๋„ฃ์–ด ํฐ ์ˆซ์ž๋ฅผ ํŽธํ•˜๊ฒŒ ์ฝ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 

 

์ œ๊ณฑ ๋ฆฌํ„ฐ๋Ÿด ์ ‘๋ฏธ์‚ฌ

์ž˜ ์“ฐ์ด์ง€๋Š” ์•Š์ง€๋งŒ ๊ธฐํ˜ธ p๋ฅผ ์ด์šฉํ•ด ์‹ค์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์„ ์ง€์ˆ˜ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. p๋Š” 2์˜ ์ œ๊ณฑ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

๊ธฐํ˜ธ E๋ฅผ ์ด์šฉํ•ด ์‹ค์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์„ ์ง€์ˆ˜ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. E๋Š” 10์˜ ์ œ๊ณฑ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

public class LiteralDelimiterTest0 {
    public static void main(String[] args) {
        // 16์ง„์ˆ˜ 12 * 2^3 = (16 + 2) * 8 = 144.0
        double d = 0x12p3;

        // 3 * 10^3 = 3000
        double a = 3e3;

        System.out.println("d = " + d);
        System.out.println("a = " + a);
    }
}

 

ํƒ€์ž… ํ™•์žฅ 

float์˜ ์†Œ์ˆ˜์  ์ •๋ฐ€๋„๋Š” 7์ž๋ฆฌ, double์˜ ์†Œ์ˆ˜์  ์ •๋ฐ€๋„๋Š” 15์ž๋ฆฌ

์ƒ๋Œ€์ ์œผ๋กœ ํฐ ์ž๋ฃŒํ˜•์—๋Š” ์ƒ๋Œ€์ ์œผ๋กœ ์ž‘์€ ํƒ€์ž…์„ ๋‹ด์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

ex) int i = 'A' // OK('A'์˜ ์œ ๋‹ˆ์ฝ”๋“œ์ธ 65๊ฐ€ ์ €์žฅ). int ํƒ€์ž…์˜ ๋ฒ”์œ„๊ฐ€ char ํƒ€์ž…์˜ ๋ฒ”์œ„๋ณด๋‹ค ํฌ๊ธฐ ๋•Œ๋ฌธ์— 

ex) long l = 123; // OK. long ํƒ€์ž…์˜ ๋ฒ”์œ„๊ฐ€ int ํƒ€์ž…์˜ ๋ฒ”์œ„๋ณด๋‹ค ํฌ๊ธฐ ๋•Œ๋ฌธ์—

ex) double d = d = 3.14f // OK. double ํƒ€์ž…์˜ ๋ฒ”์œ„๊ฐ€ float ํƒ€์ž…์˜ ๋ฒ”์œ„๋ณด๋‹ค ํฌ๊ธฐ ๋•Œ๋ฌธ์—

 

ex) float f = 3.14 // ์—๋Ÿฌ. float ํƒ€์ž…์˜ ๋ฒ”์œ„๋ณด๋‹ค double ํƒ€์ž…์ด ํฌ๋ฏ€๋กœ ์ €์žฅ ๋ถˆ๊ฐ€ 

ex) int i = 0x123456789; int ํƒ€์ž…์˜ ๋ฒ”์œ„๋ฅผ ๋„˜์–ด์„ฌ 0001 2345 6789(16์ง„์ˆ˜)

 

 

๋ฌธ์ž์™€ ๋ฌธ์ž์—ด ๋ฆฌํ„ฐ๋Ÿด

๋ฌธ์ž์˜ ๊ฒฝ์šฐ ์ž‘์€ ๋”ฐ์˜ดํ‘œ๋กœ ๊ฐ์‹ธ ๋ฌธ์ž ๋ฆฌํ„ฐ๋Ÿด๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค -> ๋ฌธ์ž A์˜ ๊ฒฝ์šฐ 'A'

๋ฌธ์ž์—ด์˜ ๊ฒฝ์šฐ ํฐ ๋”ฐ์˜ดํ‘œ๋กœ ๊ฐ์‹ธ ๋ฌธ์ž์—ด ๋ฆฌํ„ฐ๋Ÿด๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค -> ๋ฌธ์ž์—ด ABC์˜ ๊ฒฝ์šฐ "ABC"

 

๋ฌธ์ž์˜ ๊ฒฝ์šฐ ๋ฆฌํ„ฐ๋Ÿด ์•ˆ์— ๊ณต๋ฐฑ๋ฌธ์ž๋ฅผ ํฌํ•จํ•˜์—ฌ ๋ฐ˜๋“œ์‹œ ๋ฌธ์ž๊ฐ€ ์žˆ์–ด์•ผ ํ•˜๊ณ , 

๋ฌธ์ž์—ด์˜ ๊ฒฝ์šฐ์—๋Š” ๋ฆฌํ„ฐ๋Ÿด ์•ˆ์— ๋‚ด์šฉ์ด ์—†๋Š” ๋นˆ ๋ฌธ์ž์—ด์„ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

char c0 = 'A';
String s0 = "ABC";

char c = '' // error
char c = ' '; // OK
String s = ""; // OK

 

Tip : ๋ฌธ์ž์—ด์˜ ๊ฒฝ์šฐ ๋ง์…ˆ ์—ฐ์‚ฐ์ž๋กœ ๋ฌธ์ž์—ด์„ ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ๋‹ค.
๋ฌธ์ž์—ด + any Type = ๋ฌธ์ž์—ด + ๋ฌธ์ž์—ด = ๋ฌธ์ž์—ด
any Type + ๋ฌธ์ž์—ด = ๋ฌธ์ž์—ด + ๋ฌธ์ž์—ด = ๋ฌธ์ž์—ด

์ฆ‰, ๋ฌธ์ž์—ด๊ณผ ๊ฒฐํ•ฉ๋˜๋Š” ๊ฒฝ์šฐ ์–ด๋– ํ•œ ํƒ€์ž…์ด๋“  ๋ฌธ์ž์—ด๋กœ ์น˜ํ™˜๋จ

<์ฐธ๊ณ  ์ž๋ฃŒ>

 

[Java] ์ž๋ฐ” ์˜ˆ์•ฝ์–ด ์ด์ •๋ฆฌ

์ž๋ฐ” ์˜ˆ์•ฝ์–ด์—๋Š” ์–ด๋–ค๊ฒƒ๋“ค์ด ์žˆ์„๊นŒ?์ž๋ฐ” ์˜ˆ์•ฝ์–ด 35๊ฐœ ์ •๋„๋ฅผ ์ •๋ฆฌ ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค. โ€‹ abstract์ถ”์ƒ ํด๋ž˜์Šค ๋˜๋Š” ์ถ”์ƒ ๋ฉ”์†Œ๋“œ์— ์‚ฌ์šฉํ•จ boolean๋…ผ๋ฆฌํ˜• ์ฐธ(true) ๊ณผ ๊ฑฐ์ง“(false)default ๊ฐ’์€ false break๋ฐ˜๋ณต๋ฌธ

vaert.tistory.com

 

 

์ž๋ฐ” ๊ธฐ๋ณธํ˜•์˜ ์ข…๋ฅ˜์™€ ์ €์žฅ๋ฒ”์œ„

๊ฐœ์š” ์ž๋ฐ” ๊ธฐ๋ณธํ˜•์˜ ์ €์žฅ๋ฒ”์œ„๋Š” ๊ฐ ์ž๋ฃŒํ˜• ๋น„ํŠธ์˜ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋‹ค๋ฅด๋‹ค. ์–ด๋– ํ•œ ๋ฐฉ์‹์œผ๋กœ ์ €์žฅ๋˜๋Š”์ง€ ์ดํ•ดํ•˜๊ณ  ์ €์žฅ ๊ฐ€๋Šฅํ•œ ๋ฒ”์œ„๋ฅผ ์™ธ์šฐ๊ธฐ ๋ณด๋‹ค๋Š” ๊ณ„์‚ฐํ•˜๋ฉด ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ์ •๋ฆฌ๋ฅผ ํ•˜๊ณ ์ž ํ•œ

hymndev.tistory.com

 

๋ธ”๋กœ๊ทธ์˜ ์ •๋ณด

Study Repository

rlaehddnd0422

ํ™œ๋™ํ•˜๊ธฐ