CharSequence과 String, StringBuffer, CharBuffer 비교
여기서는 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();