【发布时间】:2016-05-21 14:53:30
【问题描述】:
我在 Win7 Pro 上使用 Java 7 SE 并且遇到了这个问题: 将 int 转换为 char 无法正常工作。
怎么了?
谢谢。
int oneInt = 1;
char oneChar = '1';
// prints false
System.out.println((char) oneInt == oneChar);
// prints this symbol
oneChar = (char) 1;
System.out.println(oneChar);
// Works - it prints 1
oneChar = (1 + "").charAt(0);
System.out.println(oneChar);
【问题讨论】:
-
没什么错,就是叫ASCII brah
-
(int) '1'根据 ASCII 表是 49,你期望(int) '$'是什么? -
我对此感到困惑,不知道表达式
(char) intVal和(int) charVal分别相当于AscW(intVal)ChrW(charVal)例如在VB中。现在很清楚,如下所述。