黑马程序员技术交流社区

标题: 字符的比较在底层是不是ASCLL码在比较 [打印本页]

作者: 陈少文    时间: 2012-8-14 12:13
标题: 字符的比较在底层是不是ASCLL码在比较

char a = 'a';
char b = 'b';
  if(a<b)
  {
   System.out.println("a<b");
  }

请问一下,字符的比较在底层是不是ASCLL码在比较
a 对应的ASCLL码97
b对应的ASCLL码98
a<b
在计算机底层实值上比较的是97<98

如果不是ASCLL码在比较,那是根据什么在比较。
作者: 周瑞    时间: 2012-8-14 12:32
任何char型数据都是以ASCII码的形式保存的,比如空格,实际保存的是32。所以他们的比较就是ASCII码的比较。
  1. char a = 'a';
  2. char b = 'b';
  3.   if(a<b)
  4.   {
  5.    System.out.println("a<b");//所以输出为true
  6.   }
复制代码

作者: 黑马连家华    时间: 2012-8-14 12:35
Bingo!         
作者: 黎健东    时间: 2012-8-14 13:29
的确是比较ASCLL




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2