string3 [Java] String & StringBuffer & StringBuilder String vs StringBuffer/StringBuilder String과 StringBuffer/StringBuilder 클래스의 가장 큰 차이점은 String은 불변(immutable)의 속성을 갖는다는 점이다. 할당된 공간이 변하지 않는 특성을 불변(Immutable)성 할당된 공간이 변하는 특성을 가변(mutable)성 기존에 "hello" 값이 들어가있던 String 클래스의 참조변수 str이 "hello world"라는 값을 가지고 있는 새로운 메모리영역을 가리키게 변경된다. 처음 hello를 저장했던 메모리 영역은 Garbage로 남아있다가 GC(garbage collection)에 의해 사라진다. String 클래스는 불변하기 때문에 문자열을 수정하는 시점에 새로운 String 인스턴.. 2024. 3. 16. [Java] String to int, int to String 형 변환하기 ✏️ String to int 형변환하기(문자열을 숫자로) 1. Integer.parseInt() : 기본 자료형인 int를 리턴 class stringToInt { public static void main(String[] args) { String str = 123; int num = Integer.parseInt(str); System.out.println(num); // 결과 : 123 } } 2. Integer.valueOf() : 객체인 Integer Object를 리턴 class stringToInt { public static void main(String[] args) { String str = 123; int num = Integer.valueOf(str); System.out.prin.. 2024. 3. 13. [Java] 문자열 split, replace 사용 시 마침표(.) 안되는 경우 split 메소드를 사용하여 문자열을 마침표(.)를 기준으로 나누려고 아래와 같이 시도했다. String str = "2023.12"; String[] arr = str.split("."); System.out.println(arr.length); ' arr = [2023, 12] ' 을 예상했지만 결과는 0이 나왔다.. 마침표(.)는 정규식 예약어이기 때문에 정규식에서 개행문자(\n)를 제외한 모든 문자를 의미한다고 한다. 마침표(.)가 예약어 점이 아닌 문자 "." 이라는 것을 역슬래시(\)를 이용해서 알려줘야 한다. 이때 역슬래시(\)도 예약어이기 때문에 하나 더 써줘야한다. 그래서 그냥 split(".") 이 아니라 split("\\.") 으로 수행해하면 된다. String str = "2023... 2024. 3. 11. 이전 1 다음