Java新手又来提问鸟,关于将int型赋给char和将char型赋int~ 本帖最后由 ku8h96de4 于 2013-05-13 22:05:09 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在ASCII码里'C'的值是67,把c值赋给d是,d的值就是67了 这个是和ASCII码表是相对于的a对应于十进制的97,后面类推 暗含一个类型转换的,例如: char d = 67; System.out.println(d);输出C char 类型对应ASKII 码表 值为0-255 楼主如果用不在这个范围的数 再去测试的话 就不会出现这样的情况了 char属于数字是对应字符的ASCII值,所以输出char时,会使出相应的字符 public static void main(String... args){ char c1 = 105; int i1 = 105; char c2 = 'i'; int i2 = 'i'; System.out.println(c1); System.out.println(i1); System.out.println(c2); System.out.println(i2); }他们的数据是相同的,只是类型不同,另外纠正下上面一些说法,ascii只是0-127前128个字符,而char类型是16bits的unicode字符,包括的范围完全不一样,为什么输出会不一样是因为println对不同的类型的处理不同,背后其实是调用不同的String.valueOf()的重载当是int类型时,他做public static String valueOf(int i) { return Integer.toString(i);}当是char类型时,他做public static String valueOf(char c) { char data[] = {c}; return new String(data, true);} 补充下,上面说的都是在不越界的情况下,因为char是16bits而int是32bits,使用不当会出现越界的 怎对src同级目录下的properties文件做写入操作,求指教。要相对路径的方式。 关于java适配器的问题 对两个字符串怎么比较大小啊 运行时有时出现的一个错误! 笨鸟求教:关于连接SQL Server的问题 如何使用正则表达式校验一个字符串?急!!! 三台机子间互相栲文件,如何实现最好? 非常easy的问题,int的问题 小问题,期待你到来 我刚过SCJP,请各位神仙指条明路(有建意就一定有分:)) 多线程 加法 继承HashSet问题
char d = 67;
System.out.println(d);
输出C
public static void main(String... args){
char c1 = 105;
int i1 = 105;
char c2 = 'i';
int i2 = 'i';
System.out.println(c1);
System.out.println(i1);
System.out.println(c2);
System.out.println(i2);
}他们的数据是相同的,只是类型不同,另外纠正下上面一些说法,ascii只是0-127前128个字符,而char类型是16bits的unicode字符,包括的范围完全不一样,为什么输出会不一样是因为println对不同的类型的处理不同,背后其实是调用不同的String.valueOf()的重载
当是int类型时,他做public static String valueOf(int i) {
return Integer.toString(i);
}当是char类型时,他做public static String valueOf(char c) {
char data[] = {c};
return new String(data, true);
}