λ³μ(variable)μ΄λ λ°μ΄ν°λ₯Ό μ μ₯νκΈ° μν΄ ν λΉ λ°μ λ©λͺ¨λ¦¬ 곡κ°μ μλ―Ένλ€.
λ³μμ μ’ λ₯λ μ¬λ¬ κ°μ§κ° μμ§λ§, μ¬κΈ°μ λ€λ£¨λ λ³μλ μ§μ λ³μ(local variable)μ΄λΌκ³ νλ€.
- κ°λ μ±μ λμΈλ€
- μ¬μ¬μ©μ ν΅ν μ μ§λ³΄μμ± ν₯μ
λ³μλ₯Ό μ¬μ©νκΈ° μν΄μλ λ³μλ₯Ό μ μΈνκ³ , λ³μμ κ°μ λμ νμ¬ μ¬μ©νλ€.
μ΄ λ μ μΈν λ³μμ μ΅μ΄ κ°μ λμ νλ κ²μ μ΄κΈ°νλΌκ³ νλ€.
μ΄λ¬ν μ μΈκ³Ό μ΄κΈ°νλ λ°λ‘ μμ±ν μ λ μκ³ , λμμ μμ±ν μ μλ€.
λμμ μμ±νλ κ²μ μ μΈκ³Ό λμμ μ΄κΈ°ν λΌκ³ νλ€.
// λ³μμ μ μΈ μμ
int age;
// μ μΈν λ³μμ κ° λμ
μμ
age = 20;
age = age;
// μ μΈκ³Ό λμμ μ΄κΈ°ν μμ
int point = 100;
λ³μλ₯Ό μ μΈνλ€λ μλ―Έλ λ©λͺ¨λ¦¬μ 곡κ°μ μμ±νκ³ κ·Έ 곡κ°μ μ°Έμ‘°(reference)ν μ μλλ‘ μ΄λ¦μ λΆμ¬νλ κ²μ΄λ€.
μ μΈμ νκΈ° μν΄μλ
μλ£ν λ³μλͺ ;
μμ κ°μ ννλ‘ μμ μ΄λ ν λ°μ΄ν°λ₯Ό μ μ₯νλ κ³΅κ° μΈμ§λ₯Ό μλ €μ£Όλ ν€μλλ₯Ό μμ±νκ² λλ€. μ΄λ κ² μμ½λ ν€μλλ₯Ό μλ£νμ΄λΌκ³ νλ€.
λ€μν κ°μ ννλ³λ‘ μ΄λ μ λμ ν¬κΈ°λ₯Ό νλμ κ°μΌλ‘ μ·¨κΈν κ²μΈμ§ 미리 Compilerμ μ½μν ν€μλμ΄λ€.
μ) int μλ£νμ μ μλ₯Ό 4byteλ§νΌμ μ½μ΄μ νλμ κ°μΌλ‘ μ·¨κΈνκ² λ€λ μ½μμ΄λ€.
μ΄λ¬ν μλ£νμ κΈ°λ³Έμλ£ν(Primary type)κ³Ό μ°Έμ‘°μλ£ν(Reference type)μΌλ‘ λλμ΄μ§λ€.
intλ₯Ό λνμλ£νμΌλ‘ μ¬κΈ°λ©°, νΉμν κ²½μ°κ° μλ μ΄μ byteμ shortμ μ μ¬μ©νμ§ μλλ€.
| νμ | ν λΉλλ λ©λͺ¨λ¦¬ ν¬κΈ° | λ°μ΄ν° νν λ²μ |
|---|---|---|
| byte | 1 λ°μ΄νΈ | ~ |
| short | 2 λ°μ΄νΈ | ~ |
| int | 4 λ°μ΄νΈ | ~ |
| long | 8 λ°μ΄νΈ | ~ |
2. μ€μν
doubleμ λνμλ£νμΌλ‘ μ¬μ©νκ³ floatλ νΉμν λͺ©μ μ΄ μλ κ²½μ°μλ§ μ¬μ©νκ² λλ€.
| νμ | ν λΉλλ λ©λͺ¨λ¦¬ ν¬κΈ° | λ°μ΄ν° νν λ²μ |
|---|---|---|
| float | 4 λ°μ΄νΈ | ~ |
| double | 8 λ°μ΄νΈ | ~ |
3. λ¬Έμν
| νμ | ν λΉλλ λ©λͺ¨λ¦¬ ν¬κΈ° | λ°μ΄ν° νν λ²μ |
|---|---|---|
| char | 2 λ°μ΄νΈ | ~ |
4. λ Όλ¦¬ν
| νμ | ν λΉλλ λ©λͺ¨λ¦¬ ν¬κΈ° | λ°μ΄ν° νν λ²μ |
|---|---|---|
| boolean | 1 λ°μ΄νΈ | true νΉμ false |
1. λ¬Έμμ΄
λ¬Έμμ΄μ μ μ₯νκΈ° μν μλ£ν
String str; //4byte (μλ°ν μ΄μΌκΈ° νλ©΄ μ£Όμκ°μ 4byte μ μνμ΄λ€.)
byte bnum = 1;
short snum = 2;
int inum = 4;
//long lnum = 8; //μ무 λ¬Έμ μλ κ² κ°μ§λ§ μ¬μ€ λ€μ λλ¬Έμ Lμ λΆμ¬μΌ νλ€. κ·Έ μ΄μ λ λ€μ νλ³νμμ λ€λ£¨κ² λ κ²μ΄λ€.
long lnum = 8L; //μλ¬Έμλ‘ 'l'μ μ¨λ λμ§λ§ κΈκΌ΄μ λ°λΌ μ«μ 1κ³Ό νΌμ μ΄ λΉμ΄μ§ μ μμ΄μ λλ¬Έμλ‘ νλ κ²μ΄ κΆμ₯μ΄λ€.
System.out.println("bnumμ κ° : " + bnum);
System.out.println("snumμ κ° : " + snum);
System.out.println("inumμ κ° : " + inum);
System.out.println("lnumμ κ° : " + lnum);
//float fnum = 4.0; //μ€μ ννμ κ°μ fnumμ μ¬μ©νλ κ²μ λΆκ°λ₯νλ€.
float fnum = 4.0f; //μ€μ λ€μ 'f'λ₯Ό λΆμ¬μΌ νλ€. λλ¬Έμ 'F'λ κ°λ₯νμ§λ§ μλ¬Έμλ₯Ό μ¬μ©νλ κ²μ΄ μΌλ°μ μ΄λ€.
double dnum = 8.0;
System.out.println("fnumμ κ° : " + fnum);
System.out.println("dnumμ κ° : " + dnum);