Language/Java

CharSequence과 String, StringBuffer, CharBuffer 비교

TechNote.kr 2016. 1. 27. 22:27
728x90



여기서는 String, StringBuffer, CharBuffer 각각의 차이점보다 CharSequence와 다른것들과의 차이를 알아보고자 한다.

public interface CharSequence

public final class String extends Object implements Serializable CharSequence Comparable<T>
public final class StringBuffer extends Object implements Serializable Appendable CharSequence
public abstract class CharBuffer extends Buffer implements Appendable CharSequence Comparable<T> Readable


CharSequence는 interface고 String, StringBuffer, CharBuffer는 이 interface를 구현한 Class이다.


즉, CharSequence에서 String으로 변환이 필요할 경우, String에서 CharSequence로 변환이 필요할 경우가 있는데 방법은 다음과 같다.


String -> CharSequence



String이 CharSequence interface를 구현한 Class이므로 그냥 단순히 up-casting을 해주면 된다.


예>

CharSequence sample = Stringitem;


CharSequence -> String


CharSequence 자체는 interface라 instance를 만들지 못하므로 StringBuffer를 CharSequence로 up-casting한 후 String 변환을 보면 다음과 같다.


예>

CharSequence cs = new StringBuffer("a string");
String s2 = cs.toString();




728x90