问题是:char型变量中能不能存贮一个中文汉字?为什么? 
但我看答案有的是能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字节,所以放一个中文是没问题的。
有的是一个char占16bit. 到底是字节还是位(bit).弄不懂?

解决方案 »

  1.   


    public static void main(String args[]) {
    char a='a';
    System.out.println(Integer.toBinaryString(a));
    }输出
    1100001
    明白了吧 8位
      

  2.   


    public static void main(String args[]) {
    char a='的';
    System.out.println(Integer.toBinaryString(a));
    }111011010000100
    16位
      

  3.   

    没抢到分。。
    简单的说,Java中的char可以存储16个bit,一个汉字在unicode下也就2个字节(16个bit),所以存储是完全没问题的。
      

  4.   


    public class Chars {
    public static void main(String args[]) {
    char a = 'a';
    char b ='\u0061';
    char c = '鱼';
    char d ='\u9c7c';
    System.out.println(a);
    System.out.println(b);
    System.out.println(c);
    System.out.println(d);

    }
    }
    /*
    //结果:
    a
    a


    */
      

  5.   

    public class Chars {
    public static void main(String args[]) {
    char a = 'a';
    char b ='\u0061';
    char c = '鱼';
    char d ='\u9c7c';
    System.out.println(a);
    System.out.println(b);
    System.out.println(c);
    System.out.println(d);
    /*
    //结果:
    a
    a


    */
    }
    }
      

  6.   

    Java中的char可以存储16个bit,一个汉字在unicode下也就2个字节(16个bit),所以存储是完全没问题的。
      

  7.   

    没有事扣这种细节,楼主真强啊!
    在下佩服.
    char x='中'
    是可以的,各位兄弟都说破嘴了.