Notice
Recent Posts
Recent Comments
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Archives
Today
Total
관리 메뉴

충분히 쌓여가는

래퍼(wrapper) 클래스, Number 클래스 본문

Java/JAVA2

래퍼(wrapper) 클래스, Number 클래스

빌드이너프 2023. 6. 29. 00:36

래퍼 클래스

기본형 값을 감싸는 클래스

8개의 기본형(객체 아님)을 객체로 다뤄야할 때 사용하는 클래스

public final class Integer extends Number implements Comparable {
    ...
    private int value;
    ...
}
기본형 래퍼 클래스 생성자 활용 예
boolean Boolean Boolean(boolean value)
Boolean(String s)
Boolean b = new Boolean(true);
Boolean b2 = new Boolean("true");
char Character Character(char value) Character c = new Character('a');
byte Byte Byte(byte value)
Byte(String s)
Byte b = new Byte(10);
Byte b2 = new Byte("10");
short Short Short(short value)
Short(String s)
Short s = new Short(10);
Short s2 = new Short("10");
int Integer Integer(int value)
Integer(String s)
Integer i = new Integer(100);
Integer i2 = new Integer("100");
long Long Long(long value)
Long(String s)
Long l = new Long(100);
Long l2 = new Long("100");
float Float Float(double value)
Float(float value)
Float(String s)
Float f = new Float(1.0);
Float f2 = new Float(1.0f);
Float f3 = new Float("1.0f");
double Double Double(double value)
Double(String s)
Double d = new Double(1.0);
Double d2 = new Double("1.0");

 

compareTo(): 같으면0, 작으면 양수, 크면 음수 반환

public class wrapperTest {
    public static void main(String[] args) {
        Integer i = new Integer(100);
        Integer i2 = new Integer(100);

        System.out.println(i == i2); // false
        System.out.println(i.equals(i2)); // true, => 오버라이딩 되어있다
        System.out.println(i.compareTo(i2)); // 0
        System.out.println(i.toString()); // 100
        System.out.println();

        System.out.println(Integer.MAX_VALUE); // 2147483647
        System.out.println(Integer.MIN_VALUE); // -2147483648
        System.out.println(Integer.SIZE + "bits"); // 32bits
        System.out.println(Integer.BYTES + "bytes"); // 4bytes
        System.out.println(Integer.TYPE);// int
    }
}

false
true
0
100

2147483647
-2147483648
32bits
4bytes
int

Number 클래스

모든 숫자 래퍼 클래스의 조상

Number 클래스의 안은 추상 클래스이다

객체가 가지고 있는 값을 기본형으로 바꿔주는 메서드들을 가지고 있다(래퍼 객체 -> 기본형)

public abstract class Number implements java.io.Serializable {
    public abstract int intValue();
    public abstract long longValue();
    public abstract float floatValue();
    public abstract double doubleValue();
    
    public byte byteValue() {
        return (byte)intValue();
    }
    
    public short shortValue() {
        return (short)intValue();
    }
}

'Java > JAVA2' 카테고리의 다른 글

Calendar 클래스  (0) 2023.07.02
오토박싱 & 언박싱  (0) 2023.06.29
StringBuilder, Math 클래스  (0) 2023.06.28
StringBuffer 클래스의 메서드  (0) 2023.06.28
StringBuffer 클래스  (0) 2023.06.27