欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

JAVA中char类型加减乘除运算表达式返回类型,那么如果表达式中参与

来源: javaer 分享于  点击 16434 次 点评:91

JAVA中char类型加减乘除运算表达式返回类型,那么如果表达式中参与


我们都知道java中,如果char类型和int类型做加减法,那么char类型会被精度提升至int类型然后参与运算,返回的也是int类型的数据。

那么如果表达式中参与运算的均为char类型,那么表达式返回的类型是什么呢?

'A' - 'a'

经过简单测试,是int类型

char c = 'w';
sb.append('A' + c - 'a');

这个问题是在调用StringBuilder.append()方法里面遇到的,本来期望的是追加一个表达式计算完成后的字符,但是最后追加的是一个两位的数字。而StringBuilder.append()恰巧重载了多种类型的参数,包括char,ing等,说明匹配到了append(int)方法,如果想追加字符,那么需要将表达式强制转换为char类型。

char c = 'w';
sb.append((char)('A' + c - 'a'));
相关栏目:

用户点评