Java中的“char”操作有什么区别?[duplicate]

plupiseo  于 2023-01-07  发布在  Java
关注(0)|答案(1)|浏览(109)
    • 此问题在此处已有答案**:

Java - char, int conversions(4个答案)
16小时前关门了。
我知道a的值是97,A的值是65。

char ch = 'a';
char ch1 = ch - 32;

我收到"错误:不兼容类型:从int到char的转换可能会出现损耗"。
寻找并修复它。

char ch = 'a';
char ch1 = (char)(ch - 32);

这里得到ch1 = ′ A ′。
在另一种方式中,

char ch2 = 'a' - 32;

这里得到ch2 = ′ A ′。
我不知道有什么区别。
据我所知,在对char变量(= ch)进行操作时,是否需要与char重叠才能进行......操作?
有人知道这两者的区别吗?

public static main(String[] args){
  char ch = 'a';
  // char ch1 = ch - 32; // Error
  char ch1 = (char)(ch - 32); // -> 'A'
  char ch2 = 'a' - 32; // -> 'A'
}
twh00eeo

twh00eeo1#

我不确定,但我相信通过变量执行的char和int操作的结果会解析为需要转换的整数结果类型-但当使用像'a'这样的char执行时,会解析为char结果类型。

相关问题