都说java内部用的是unicode编码,我查了些资料Unicode是编码字符集,仅仅是规定了世界上所有字符在计算机内部的整数表达方式。像utf-8,utf-16是unicode的实现方式,那么在java中,具体的字符是用什么编码方式实现的呢?请高手指点!!

解决方案 »

  1.   

    我的意思是java内部存储字符是怎么存储的,比如char tt='中',这个tt变量在java程序本身是怎么保存的,是用什么编码来存储tt这个变量。
      

  2.   

    应该就是Unicode编码。
    貌似Unicode编码有两种,一个是16位滴,一个是比16位大滴,好像是32位什么的。
    Java当中,就是使用的16位的双字节Unicode编码。
    所以,每个char变量,都占两个字节。UTF-8和UTF-16都是字符编码,只不过是变长滴。Unicode字符集,我个人理解,应该是Unicode编码与字符之间的映射关系。
    个人理解,字符集和编码其实是一个东西的不同侧重。
    字符集,强调的是二进制信息和字符的对应关系;编码,强调的二进制信息与字符之间的转化过程(方式)。