반응형

자바에 String , Integer, Array Lab 클래스이다.(이뮤터블 클래스, 불변객체)

String s = "";

for(int i =1; i<26; i++){ s = s+ ('A' + i )

}

를 실행하면 s객체가 27개가 생성된다.

객체의 과도한 생성을 막기위해 StringBuilder 를 이용한다.

많은 양을 출력하는 경우는 StringBuilder 의 append로 모아서 출력하는것이 낫다.

public static void main(String[] args) {
		
		String s = "홍길동";
		System.out.println("길동".length());
		s = s.replace('홍','손');
		System.out.println(s);
		char[] ca = s.toCharArray();
		for(char c : ca) System.out.println(c);
		
		StringBuilder sb = new StringBuilder(s);
		sb.reverse(); // String 에는 리버스가 없음
		System.out.println(sb.toString());
		System.out.println();
		
		String s1 = "홍길동";
		String s2 = "홍길동";
		String t1 = new String("홍길동");
		String t2 = new String("홍길동");
		
		System.out.println(s1==s2); //true
		System.out.println(s1==t1); //false
		System.out.println(t1==t2); //false
		System.out.println(s1.equals(s2));//true
		System.out.println(s1.equals(t1));//true
		System.out.println(t1.equals(t2));//true

	  StringBuilder sb1 = new StringBuilder("홍길동");
		StringBuilder sb2 = new StringBuilder("홍길동");
		
		System.out.println(sb1 == sb2);
		System.out.println(sb1.toString().equals(sb2.toString()));
		//StringBuilder 객체는 .toString()을 오버라이딩 하지 않는 이상 
	  //String으로 변환후에 비교가 가능핟.
	}
반응형

'3. 자바 > 2. Class' 카테고리의 다른 글

시간체크  (0) 2020.03.02
bigInteger, BingDecimal  (0) 2020.03.02
Input, Output  (0) 2020.03.02
중첩 클래스  (0) 2020.03.02
Overriding  (0) 2020.03.02

+ Recent posts