java char的转换问题

来源:百度知道 编辑:UC知道 时间:2024/06/05 14:43:36
public class TimerDemo {
public static void main(String[] args) {
char a = '6';
System.out.println((byte)a);
}
}
输出54,54是ascii吗?这么转换成ascii有什么意义啊

不知道你接触Java的流没有, 当你从一个文件中读取内容的时候, 如果用流操作读取, 你看不到字符和字符串, 全都是一个一个的字节码, 一字节是一个字符(对于汉字等一些后添加的字符, 占两个字节的位置), 而且你要知道, 网络传输时不可能传输字符串的, 不管加密没加密, 传递的都是这类的字节流, 所以说是非常有用. 至于在这个程序中没有太大的意义, 这是Java提供的强制转化机制, 你见54强转成char型, 显示的还是6.

如果不想打印54,你可以不进行强制转换,
System.out.println(a);
这样就可以打印6了,

至于转换有什么意思,看个人需求吧

ascii码 也对应了26个英文字符,10个数字,以及键盘上的每一个键,这个在写游戏的时候长用到,例如我们按下回车的时候,不变成提交,而是变成换到下一行,这个时候 只需要改变按下键的ascii就可以了

字符6对应的ASCII码是54,所有的字母和符号都对应一个ASCII码。
将人在键盘上敲入的字符(数字、字母、特殊符号等)转换成机器能够识别的二进制数,并且每个字符唯一确定一个ASCII码,形象地说,它就是人跟计算机交流时使用的键盘语言通过“翻译”转换成的计算机能够识别的语言。

byte是数, 你已经把“6”这个转化为它对应的数字了。。。。意义在于,a的ascii + 1就是b,再+1就是c,这样可以处理一些名字排列,数据整理等等。。。

恩 对 有什么意义?这个就是这样的啊 API文档及这样写的 看你要实现什么 如果要得到其他东西的话就用其他办法得到呗