有人可以告诉我这是怎么回事:
char c = '+';
int i = (int)c;
System.out.println("i: " + i + " ch: " + Character.getNumericValue(c));
打印i: 43 ch:-1。这是否意味着我必须依靠原始转换才能转换char为int?那么如何将a转换Character为Integer?
编辑:是的,我知道Character.getNumericValue返回的-1值是否不是数值,这对我来说很有意义。问题是:为什么进行原始转换会返回43?
Edit2: 43是的ASCII码+,但我希望强制转换不会成功,就像getNumericValue没有成功一样。否则,这意味着有两种语义等效的方法可以执行相同的操作,但结果不同?
慕丝7291255
MMTTMM