黑马程序员技术交流社区
标题:
小疑惑
[打印本页]
作者:
jialihong
时间:
2013-7-31 08:24
标题:
小疑惑
本帖最后由 杨兴庭 于 2013-7-31 23:20 编辑
为什么char s = 1;是正确的赋值。而 char s = "1"; 则赋值出错
作者:
薛淑凯
时间:
2013-7-31 08:43
双引号是字符串,单引号表示字符。char s='1'就对了
作者:
の放下执著
时间:
2013-7-31 08:47
为什么char s = 1;是正确的赋值。而 char s = "1"; 则赋值出错
第一:java运用的是Unicode编码表,我个人比较喜欢这样理解:编码表其实就是字符与数字的映射,每一个字符都有对应的数字。当要存储一个字符时,会先查编码表,最后是把字符对应的数字存在内存中,所以直接给字符赋值一个数字也是可以的。
第二:char s = "1"; “1”这是一个字符串,双引号引起的是字符串,不是字符。字符用单引号引起。改为:char s = ‘1’;即可。
最后,希望可以帮到楼主,嘿嘿。
作者:
woaiheima
时间:
2013-7-31 08:50
char类型是字符型,char类型在内存中占两个8位。要用字符型特有的格式char s='1',
注意:这里用的是单引号,并不是双引号!
作者:
王松松
时间:
2013-7-31 14:07
Char s = 1; 这是一个赋值运算,运算符右边是int型常量1,可以直接知道结果,那么需要转换成char类型,那么只要转换后在char类型范围内,就可以编译通过。
Char s = "1";这个格式是错误的,准确格式char s ='1'; 因为" ... " 代表字符串类型数据,' ' 代表字符类型数据。
与你一同进步!
作者:
米中之玉
时间:
2013-7-31 14:27
char ch_1 = 97;//此时c为参照ASCII表查找97对应的字符,
System.out.println(c);//打印的结果为a
char ch_2 = "a";//改句错误。字符应放在单引号中,而不能用双引号
作者:
黑马王晓明
时间:
2013-8-1 18:30
这是基本数据类型的问题 初学java的时候应该都必须要掌握的
char 字符类型 在内存中占2个字节 16个二进制位 用' '单引号表示 而且里边必须是一个字符 char s=1; 1是对应的Unicode编码表里的某个字符 输出打印的话就会看到打印出来的是个字符而不是数字1 比如char s=97; 输出打印的话就是小写字母a
String是引用数据类型 表示字符串类型 用的是“”双引号表示 所以应该吧双引号改为单引号
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2