Kotlin과 Java의 Char 저장 방식 Kotlin과 Java는 UTF-16으로 인코딩 되어 저장된다. 아래는 Kotlin Char 클래스의 주석이다. 아래 주석에서 보면 Char은 16-bit 유니코드 문자를 표현한다고 되어 있다. /** * Represents a 16-bit Unicode character. * * On the JVM, non-nullable values of this type are represented as values of the primitive type `char`. */ public class Char private constructor() : Comparable { Kotlin과 Java는 왜 UTF-16을 문자열 인코딩 방식으로 택했을까? 바로 JVM이 내부적으로..
유니코드
문자열 인코딩이란 무엇인가? 컴퓨터에는 문자열 자체를 저장할 수 없다. 컴퓨터에는 숫자가 저장되며, 출력될 때 문자열로 변환될 뿐이다. 즉, 우리가 만약 'a'라는 문자를 저장하면 컴퓨터에는 'a'가 저장되는 것이 아닌 61이라는 16진수 숫자가 저장된다.(10진수로는 97이다). 저장된 2자리 16진수 숫자는 출력될 때 다시 문자열로 변환된다. 이를 확인하기 위해서 Kotlin으로 아래 코드를 실행하면 "ASCII value of a is 97" 이라는 결과가 나온다. fun main(){ println("ASCII value of a is ${'a'.code}") } ASCII 인코딩 방식 처음 컴퓨터가 발명되었을 때는 영어권 국가에서만 언어가 사용되었기 때문에 문자열을 저장할 수 있는 공간이 128..