Responsive Advertisement

Java ๋ฐ์ดํ„ฐ ํƒ€์ž… ์˜ˆ์ œ: ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ํ™œ์šฉ๋ฒ•

Java์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ธ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‚ฌ์šฉํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ์˜ ์•ˆ์ •์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Java์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ํฌ๊ฒŒ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…(Primitive Data Types)๊ณผ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ํƒ€์ž…(Reference Data Types)์œผ๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” Java์˜ ์ฃผ์š” ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ๊ฐ ํƒ€์ž…์˜ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ํƒ€์ž…์˜ ํ™œ์šฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž… (Primitive Data Types)

Java์˜ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ์ด 8๊ฐ€์ง€๋กœ, ๋ฉ”๋ชจ๋ฆฌ์— ๊ณ ์ •๋œ ํฌ๊ธฐ๋กœ ์ €์žฅ๋˜๋ฉฐ ํšจ์œจ์ ์ธ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์—๋Š” ์ •์ˆ˜ํ˜•, ์‹ค์ˆ˜ํ˜•, ๋ฌธ์žํ˜•, ๋…ผ๋ฆฌํ˜•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

1. ์ •์ˆ˜ํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž…

Java์˜ ์ •์ˆ˜ํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ byte, short, int, long์ด ์žˆ์œผ๋ฉฐ, ๊ฐ ํƒ€์ž…์€ ์ €์žฅ ๊ฐ€๋Šฅํ•œ ๊ฐ’์˜ ๋ฒ”์œ„์™€ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ๊ฐ€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

์ •์ˆ˜ํ˜• ์˜ˆ์ œ ์ฝ”๋“œ

public class IntegerExample {
    public static void main(String[] args) {
        byte smallNumber = 100;
        short mediumNumber = 32000;
        int standardNumber = 100000;
        long largeNumber = 10000000000L; // L ์ ‘๋ฏธ์‚ฌ ํ•„์š”

        System.out.println("byte: " + smallNumber);
        System.out.println("short: " + mediumNumber);
        System.out.println("int: " + standardNumber);
        System.out.println("long: " + largeNumber);
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ:

byte: 100
short: 32000
int: 100000
long: 10000000000

์œ„ ์ฝ”๋“œ์—์„œ๋Š” ๊ฐ๊ธฐ ๋‹ค๋ฅธ ํฌ๊ธฐ์˜ ์ •์ˆ˜ํ˜• ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ  ์ถœ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. long ํƒ€์ž…์˜ ๊ฒฝ์šฐ, ํฐ ์ •์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ์ ‘๋ฏธ์‚ฌ L์„ ๋ถ™์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

2. ์‹ค์ˆ˜ํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž…

Java์˜ ์‹ค์ˆ˜ํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ float๊ณผ double์ด ์žˆ์œผ๋ฉฐ, ์†Œ์ˆ˜์  ์ดํ•˜์˜ ๊ฐ’์„ ํฌํ•จํ•œ ์ˆซ์ž๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹ค์ˆ˜ํ˜• ์˜ˆ์ œ ์ฝ”๋“œ

public class FloatDoubleExample {
    public static void main(String[] args) {
        float pi = 3.14F; // F ์ ‘๋ฏธ์‚ฌ ํ•„์š”
        double e = 2.718281828459045;

        System.out.println("float: " + pi);
        System.out.println("double: " + e);
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ:

float: 3.14
double: 2.718281828459045

์œ„ ์ฝ”๋“œ์—์„œ๋Š” float๊ณผ double์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์ˆ˜ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. float ํƒ€์ž…์€ F ์ ‘๋ฏธ์‚ฌ๋ฅผ ํ•„์š”๋กœ ํ•˜๋ฉฐ, double์€ ๋” ๋†’์€ ์ •๋ฐ€๋„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

3. ๋ฌธ์žํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž…

char ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ๋‹จ์ผ ๋ฌธ์ž๋ฅผ ์ €์žฅํ•˜๋ฉฐ, ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์žํ˜• ์˜ˆ์ œ ์ฝ”๋“œ

public class CharExample {
    public static void main(String[] args) {
        char letter = 'A';
        char digit = '1';
        char symbol = '#';

        System.out.println("๋ฌธ์ž: " + letter);
        System.out.println("์ˆซ์ž ๋ฌธ์ž: " + digit);
        System.out.println("๊ธฐํ˜ธ: " + symbol);
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ:

๋ฌธ์ž: A
์ˆซ์ž ๋ฌธ์ž: 1
๊ธฐํ˜ธ: #

์œ„ ์ฝ”๋“œ์—์„œ๋Š” ๋ฌธ์ž, ์ˆซ์ž ๋ฌธ์ž, ๊ธฐํ˜ธ๋ฅผ char ํƒ€์ž…์œผ๋กœ ์„ ์–ธํ•˜๊ณ  ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. char๋Š” ์ž‘์€ ๋”ฐ์˜ดํ‘œ(' ')๋กœ ๊ฐ์‹ธ์„œ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

4. ๋…ผ๋ฆฌํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž…

boolean ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ true ๋˜๋Š” false์˜ ๋‘ ๊ฐ€์ง€ ๊ฐ’๋งŒ์„ ์ €์žฅํ•˜๋ฉฐ, ์กฐ๊ฑด๋ฌธ์ด๋‚˜ ๋ฐ˜๋ณต๋ฌธ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๋…ผ๋ฆฌํ˜• ์˜ˆ์ œ ์ฝ”๋“œ

public class BooleanExample {
    public static void main(String[] args) {
        boolean isJavaFun = true;
        boolean isFishTasty = false;

        System.out.println("Java๋Š” ์žฌ๋ฏธ์žˆ๋‹ค: " + isJavaFun);
        System.out.println("๋ฌผ๊ณ ๊ธฐ๋Š” ๋ง›์žˆ๋‹ค: " + isFishTasty);
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ:

Java๋Š” ์žฌ๋ฏธ์žˆ๋‹ค: true
๋ฌผ๊ณ ๊ธฐ๋Š” ๋ง›์žˆ๋‹ค: false

์œ„ ์ฝ”๋“œ์—์„œ๋Š” boolean ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ , true์™€ false ๊ฐ’์„ ํ• ๋‹นํ•˜์—ฌ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

์ฐธ์กฐ ๋ฐ์ดํ„ฐ ํƒ€์ž… (Reference Data Types)

Java์—์„œ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋Œ€ํ‘œ์ ์ธ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ๋Š” ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃจ๋Š” String์ด ์žˆ์Šต๋‹ˆ๋‹ค. String์€ ""๋กœ ๊ฐ์‹ธ์„œ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

String ์˜ˆ์ œ ์ฝ”๋“œ

public class StringExample {
    public static void main(String[] args) {
        String greeting = "Hello, World!";
        String name = "Alice";

        System.out.println("์ธ์‚ฌ: " + greeting);
        System.out.println("์ด๋ฆ„: " + name);
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ:

์ธ์‚ฌ: Hello, World!
์ด๋ฆ„: Alice

์œ„ ์ฝ”๋“œ์—์„œ๋Š” String ํƒ€์ž… ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ , ๋ฌธ์ž์—ด์„ ์ €์žฅํ•œ ํ›„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. String์€ Java์—์„œ ๊ฐ€์žฅ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์ฐธ์กฐ ํƒ€์ž… ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ํƒ€์ž… ๋ณ€ํ™˜ ์˜ˆ์ œ

Java์—์„œ๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ ํƒ€์ž… ๊ฐ„์— ๋ณ€ํ™˜์ด ํ•„์š”ํ•  ๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํƒ€์ž… ๋ณ€ํ™˜์€ ๋ฌต์‹œ์  ๋ณ€ํ™˜๊ณผ ๋ช…์‹œ์  ๋ณ€ํ™˜์œผ๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค.

1. ๋ฌต์‹œ์  ํƒ€์ž… ๋ณ€ํ™˜

์ž‘์€ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ํฐ ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ ์ž๋™์œผ๋กœ ๋ณ€ํ™˜์ด ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

public class ImplicitConversionExample {
    public static void main(String[] args) {
        int num = 100;
        double doubleNum = num; // ์ž๋™ ๋ณ€ํ™˜ (int → double)

        System.out.println("์ž๋™ ๋ณ€ํ™˜๋œ ๊ฐ’: " + doubleNum);
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ:

์ž๋™ ๋ณ€ํ™˜๋œ ๊ฐ’: 100.0

์œ„ ์ฝ”๋“œ์—์„œ๋Š” int ํƒ€์ž…์„ double ํƒ€์ž…์œผ๋กœ ์ž๋™ ๋ณ€ํ™˜ํ•˜์—ฌ ์ถœ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

2. ๋ช…์‹œ์  ํƒ€์ž… ๋ณ€ํ™˜

ํฐ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ์ž‘์€ ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ๋Š” ๋ฐ์ดํ„ฐ ์†์‹ค์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ช…์‹œ์ ์œผ๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

public class ExplicitConversionExample {
    public static void main(String[] args) {
        double doubleValue = 9.78;
        int intValue = (int) doubleValue; // ๊ฐ•์ œ ํ˜•๋ณ€ํ™˜ (double → int)

        System.out.println("๊ฐ•์ œ ๋ณ€ํ™˜๋œ ๊ฐ’: " + intValue);
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ:

๊ฐ•์ œ ๋ณ€ํ™˜๋œ ๊ฐ’: 9

์œ„ ์ฝ”๋“œ์—์„œ๋Š” double ํƒ€์ž…์„ int ํƒ€์ž…์œผ๋กœ ๊ฐ•์ œ ํ˜•๋ณ€ํ™˜ํ•˜๋ฉฐ, ์†Œ์ˆ˜์  ์ดํ•˜ ๋ถ€๋ถ„์ด ๋ฒ„๋ ค์ง‘๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

Java์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๋‹ค๋ฃจ๋Š” ๋ฐ ๋งค์šฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ํƒ€์ž…์˜ ์ฃผ์š” ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด Java ๋ฐ์ดํ„ฐ ํƒ€์ž…์˜ ํ™œ์šฉ๋ฒ•์„ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์˜ฌ๋ฐ”๋ฅธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ์„ ํƒํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋ฉด, ๋ณด๋‹ค ์•ˆ์ •์ ์ด๊ณ  ํšจ์œจ์ ์ธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž… ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด Java์—์„œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๋” ๊นŠ์ด ์ดํ•ดํ•˜๊ณ  ํ™œ์šฉํ•ด ๋ณด์„ธ์š”!

๋Œ“๊ธ€ ์“ฐ๊ธฐ