是这样的,首先解释下,字符在计算机中存储的是编码,比如a的ascII编码是97,而'1'注意是字符'1',的ASCII编码是1,ASCII是从0~255来存放基本的字符的。不包括汉字和其他国家的字符。包含各国字符的交Unicode。扯远了。
'a'+1 这是一个表达式,这个和运算符的性质有关,如果表达式这么写那么结果完全不同,"a" + 1 那么结果就是a1了。'a'+1这个表达式做运算的时候,先把'a'强制类型转换成int然后再加1.当然在C++中完全可以重载这个+号,但是java不支持运算符重载。这个是java语言设计的时候就定义好的,就是这么个运算顺序。
就是字符相加,先转换成相应的ASCII码,然后把ASCII相加。。。 |