我想设置我的数组在IF语句中满足条件时打印出一个空格。此数组是int数据类型。当我输入:
item2[2] = ' ';
当我打印它时,它会显示为32。
任何解决方案?
答案 0 :(得分:5)
没有。因为你的数据类型是int,它将打印int表示。
如果你施放到(char)
那么它可能会弄乱不需要的实际数字到char,
它来了32因为' '
的ascii值是32
更好去寻找String
数组,它既包含数字也包含空格。并相应地处理它们
答案 1 :(得分:3)
这是一个int
数组。它只能保持整数。
32是空格的ASCII值,这就是当你说item2[2] = ' ';
时存储的内容。
答案 2 :(得分:2)
''(空格)的Ascii值在html中是32,这就是为什么它回显32。
所以char''将被转换为int,即32
答案 3 :(得分:1)
字符''在int上有32的值,你需要在空白时不同。 如果您的值空间仅为正值,则可以保存-1 - 您在哪里空格,您的代码可能是这样的:
for(int i:item2){
if(i == -1) {
//Print a blank
} else {
//Print the number
}
}
或者你可以做一个更好的方法,而不是使用int,使用类Integer的数组,autoboxing将自动转换并使用null
作为“空值”
答案 4 :(得分:0)
如果您想将char
存储在数组中,为什么不使用char[]
char[] item2 = new char[10];
item2[2] = ' ';
System.out.println('|' + items2[2]+'|');
打印
| |