char中是否可以储存汉字?

下面是一道面试题。

但是本人不是很理解,而且无法写出代码,
有人解释下并给出程序吗,立马给C币

22、char 型变量中能不能存贮一个中文汉字,为什么?
答:char类型可以存储一个中文汉字,因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个中文是没问题的。
如何将基本数据类型转换为字符串?

运行结果

可以的,char可容纳单个字符的一种基本数据类型

Integer I1=new Integer(i1);//生成Integer类
//分别调用包装类的toString() 方法转换为字符串
String si1=I1.toString();
此时si1就是为string字符串了

不可以,char是字符

char是按照字符存储的,不管英文还是中文,固定占用占用2个字节,用来储存Unicode字符。范围在0-65536。
unicode编码字符集中包含了汉字,所以,char型变量中当然可以存储汉字啦。不过,如果某个特殊的汉字没有
被包含在unicode编码字符集中,那么,这个char型变量中就不能存储这个特殊汉字。

char[] c = {'好','你'};

// print Unicode value
for(int i = 0 ;i< c.length;i++)
System.out.println(Character.codePointAt(c,i));

一个汉字两个字节,Char类型一个字节,不能存储吧

在Java中char是占两个字节的,是可以的。基本数据类型转换为字符串也是很简单的。比如:String str = 1 + "" ,这样就变成了字符串了

可以,只不过要用两个要用两个char类型的空间储存,例如一个好字,用char[0]和char[1]来储存,输出时也要两个%c

Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),一个汉字也是占两个字节的,所以放一个中文是没问题的。

char 在Java中是2个字节。java采用unicode,2个字节(16位)来表示一个字符。所以可以的

java中当然可以了呀,char为两个字节,刚好一个汉字。基本数据类型转化为字符串 用String.valueOf()

char占用2个字节,可以存储绝大部分汉字;之所以说是绝大部分,因为char使用ucs-2编码字符,只能表示unicode中零号平面的字符。而String等使用UTF-16BE(扩展自ucs-2,使用2字节编码零号平面字符,同ucs-2;使用4字节编码扩展字符),可以表示所有unicode。因为char只占两个字符,所以表示不了扩展字符,而String却可以表示,其使用两个char存储一个扩展字符。