日期:2014-05-20  浏览次数:21065 次

java怎么将a转换为ascii码
java怎么获得a的ascii码,我想在java中区分输入的A和a。

------解决方案--------------------
char c = 'a';
int ascii = (int) c;
就得到了,简单点比如: System.out.println((int) 'a');

不过,在Java里面,A与a本来就是不一样的,为啥你还要特殊区分?


------解决方案--------------------
如ls所说,是数据库的问题
------解决方案--------------------
这个明显是数据库默认不区分大小写,去查一下相应的数据配置,设置为区分大小写(MYSQL能实现,其他数据库没尝试)。
------解决方案--------------------
Java在内存中,所有字符的编码都采用的是Unicode编码。
在Unicode编码中,ASCII编码能表示的字符,Unicode编码也能表示,并且,码值相同。
也就是说,ASCII编码用一个字节表示,Unicode用四个字节表示,它们都可以表示成整数。
当我们使用ASCII编码范围内的字符时,该字符的ASCII编码对应的整数值,与Unicode编码的整数值,是相同的。

字符编码,其实可以简单理解为,就是建立一个,字符与数值的对应关系。

char sa = 'a';
int va = 'a';
char sA = 'A';
int vA = 'A';

上述四条语句,sa转换成整数与va相同,sA转换成整数与vA相同;va与vA不同。
字符'a'的ASCII码值与va相同,字符'A'的ASCII码值与vA相同。

单字符而言,直接当整数比较就行。
if(sa==sA){
//相等
}else{
//不相等
}
------解决方案--------------------
探讨

ASCII编码用一个字节表示,Unicode用四个字节表示


------解决方案--------------------
先将a赋值给一个单字节变量 char ch = 'a';
然后,将ch这个变量转换成整型在赋值给一个变量 int n = (int)ch;
输出变量n System.out.println(n);