请问char a = '周';
    String a ="周";哪个正确,为什么?

解决方案 »

  1.   

    就好像:
    char c = 'a';
    String s = "a";
    也是都正确。
      

  2.   

    Java内部使用统一的双字节Unicode编码,一个汉定就是一个字符。
      

  3.   

    steedhorse(晨星) ( ) 信誉:110    Blog  2006-12-04 15:55:05  得分: 0   
     
       都正确啊。
     =============== 
     
     zhouzhichu(时代翘楚) ( ) 信誉:100    Blog  2006-12-04 16:20:47  得分: 0   
     
       目前为止没有一个正确的解答的,继续。
      
     ======
    LZ不会是两个一起写了吧??那就重名了~
      

  4.   

    我的Jcreator竟然报错,佩服,其实是都正确的,破软件
      

  5.   

    如果楼主两句话是一个程序里面的原本考过来的话,那么有如下问题1,你的分号";"不是半角的,应该是";"
    2,你的变量名重复了,都为a,这是不对的
    char c='周';
    这句话是对的String s="周";
    这句话也是对的
      

  6.   

    周是汉字 16位的 占两个字节 char也是16位的
      

  7.   

    支持steedhorse(晨星) 不知道LZ是搞什么哦.
      

  8.   

    汉字是占两个字节吧 而char类型的只有一个字节的空间
      

  9.   

    Java用的是Unicode字符串
    具体一点来讲是UTF-16编码
    所以char是16位的常见汉字——CJK基本集(U+4E00)、CJK兼容集(U+F900)、CJK扩充集A(U+3400)是在16位范围内,所以可以用一个char变量来存放但对于CJK扩充集B(U+20000)中的汉字
    超过了16位范围
    在UTF-16下使用代理对机制——用两个char来存放一个字符
    所以此时只能用string
      

  10.   

    java中一个char是占两个字节的(16位),所以java中一个char是可以是一个汉字的,都正确