목록자바 (3)
study record
int - 원시 자료형 (long, float, double 등) - 산술연산 가능 - null 초기화 불가 Integer - Wrapper 클래스(객체) - Unboxing을 하지 않으면 산술연산 불가능 - null 값 처리 가능 (SQL과 연동하는 경우에 용이) Boxing / Unboxing Boxing : 원시자료형 -> Wrapper 클래스 Unboxing : Wrqpper 클래스 -> 원시자료형 Wrapper 클래스? 자바에는 원시자료형과 객체참조(클래스) 두 가지 타입의 데이터를 가진다. 원시형타입을 객체로 사용해야 하는 경우에 Wrapper 클래스를 사용하여 원시형타입으로 나타낸다. Integer a = new Integer(1); Wrapper클래스에서 원시형 타입으로 언박싱할때에는 in..
String과 StringBuffer/StringBuilder 클래스의 가장 큰 차이점 String은 불변(immutable)의 속성을 갖는다. 따라서 변하지 않는 문자열을 자주 읽어들이는 경우 String을 사용하면 좋다. 그러나 문자열 추가,수정,삭제 등의 연산이 빈번하게 발생하는 알고리즘에 String 클래스를 사용하면 힙 메모리(Heap)에 많은 임시 가비지(Garbage)가 생성되어 힙메모리가 부족으로 어플리케이션 성능에 치명적인 영향을 끼치게 된다. 이를 해결하기 위해 Java에서는 가변(mutable)성을 가지는 StringBuffer / StringBuilder 클래스를 도입했다. StringBuffer/StringBuilder 는 가변성 가지기 때문에 .append() .delete() ..
== 비교를 위한 연산자이다. 비교하고자 하는 대상의 주소값을 비교한다 equals() 메소드이며, 객체끼리 내용을 비교할 수 있다. 비교하고자 하는 대상의 내용 자체를 비교한다. String a = "a"; String b = a; String c = new String("a"); // 새로운 객체 생성. 주소가 다름. // 주소값을 비교 a == b; // true a == c; // false // 내용(값)을 비교 a.equals(b); // true a.equals(c); // true