Wrapper class
์๋ฐ์์๋ 8๊ฐ์ ๊ธฐ๋ณธํ์ ๊ฐ์ฒด๋ก ๋ค๋ฃจ์ง ์๊ณ ์๋๋ฐ, ์ด๋ฅผ ๊ฐ์ฒด๋ก ๋ค๋ฃจ๊ธฐ ์ํด Wrapper ํด๋์ค๋ฅผ ์ ๊ณตํ๋ค.
boolean
Boolean
Boolean(boolean value)
char
Character
Character(char value)
byte
Byte
Byte(byte value)
short
Short
Short(short value)
int
Integer
Integer(int value)
long
Long
Long(long value)
float
Float
Float(float value)
double
Double
Double(double value)
๋ํผ ํด๋์ค์๋ equals()
๋ฉ์๋๊ฐ ์ค๋ฒ๋ผ์ด๋ฉ ๋์ด ์์ด์, ๊ฐ์ฒด์ ๋ด์ฉ์ ๋น๊ตํ ์ ์๋ค.
๋ํ compareTo()
๋ฉ์๋๋ ์ค๋ฒ๋ผ์ด๋ฉ ๋์ด ์์ด์, ๊ฐ์ฒด์ ๋ด์ฉ์ ๋น๊ตํ ์ ์๋ค.
class Example {
public static void main(String[] args) {
Integer i1 = new Integer(100);
Integer i2 = new Integer(100);
System.out.println(i1 == i2); // false
System.out.println(i1.equals(i2)); // true
System.out.println(i1.compareTo(i2)); // 0
}
}
Boxing
๊ธฐ๋ณธํ์ ๋ํผ ํด๋์ค๋ก ๋ณํํ๋ ๊ฒ์ Boxing, ๋ํผ ํด๋์ค๋ฅผ ๊ธฐ๋ณธํ์ผ๋ก ๋ณํํ๋ ๊ฒ์ Unboxing์ด๋ผ๊ณ ํ๋ค.
class Example {
public static void main(String[] args) {
int i = 100;
Integer i2 = new Integer(i);
Integer i3 = Integer.valueOf(i);
Integer i4 = i; // AutoBoxing
Integer i = new Integer(100);
int i2 = i.intValue();
int i3 = i; // AutoUnBoxing
}
}
์๋ฐ ์ปดํ์ผ๋ฌ๊ฐ ์๋์ผ๋ก Boxing, Unboxing์ ํด์ฃผ๊ธฐ ๋๋ฌธ์, ๊ฐ๋ฐ์๊ฐ ์ง์ Boxing, Unboxing์ ํด์ค ํ์๋ ์๋ค. ํ์ง๋ง Boxing, Unboxing์ ํ๋ ๊ฒฝ์ฐ ์ถ๊ฐ ์ฐ์ฐ ์์ ์ด ๋ฐ์ํ๊ธฐ ๋๋ฌธ์, ์ฑ๋ฅ์ ์ํฅ์ ์ค ์ ์๋ค.
Number ํด๋์ค
Boolean / Character๋ฅผ ์ ์ธํ ๋๋จธ์ง Wrapper ํด๋์ค๋ค์ Number ํด๋์ค๋ฅผ ์์๋ฐ๋๋ค.
Number ํด๋์ค์๋ BigInteger
, BigDecimal
ํด๋์ค๊ฐ ์กด์ฌํ๋๋ฐ, ์ด๋ long, double์ ๋ฒ์๋ฅผ ๋์ด์๋ ํฐ ์๋ฅผ ๋ค๋ฃฐ ๋ ์ฌ์ฉํ๋ค.
์ฐธ๊ณ ์๋ฃ
Last updated
Was this helpful?