问题是:在控制台中显示什么?如何用''声明int,为什么是'2'== 50?
我真的有一些理解上的问题。
下面是代码:
public static void felda(){
char[] felda = {'2',0x31,48};
for (int i = 0; i< felda.length; i++){
System.out.println(" : " + felda[i]);
}
System.out.println();
}
public static void feldb(){
int[] feldb = {'2',0x31,48};
for (int i = 0; i< feldb.length; i++){
System.out.println(" : " + feldb[i]);
}
System.out.println();
}
public static void feldc(){
int [] feldc = {'2',0x31,48};
for (int i = 0; i< feldc.length; i++){
System.out.println(" : " + (char) feldc[i]);
}
System.out.println();
}
所以,如果我在解决方案上运行是:
: 2
: 1
: 0
: 50
: 49
: 48
: 2
: 1
: 0
所以我不明白是怎么回事,甚至可能有“一个int definded ”。 我发现它很混乱如何int feldb = '2'
结果是50和int feldb = 0x31结果是49 ..大坝这一切都很混乱。我希望有人能够启发我。
编辑:为什么char feldc = 48;
导致0?
HTTP://www.asciitable .com/ – QuakeCore
http://www.ascii-code.com/ –
相关:http://stackoverflow.com/questions/32051600/char-to-int-conversion –