我的问题似乎很简单,但我试过寻找一个特定的答案,并没有找到。我发现了类似于我一直在寻找的答案,但他们只能设法让我更加困惑:Java:添加两个数字字符阵列
我想要做的就是添加两个字符数组并打印结果数组。该项目处理二进制数,但稍后我会处理基数2的算术,所以假设它们是基数为10的数字。
char[] array = {'1', '0', '0', '1'};
char[] array2 = {'1', '1', '0', '0'};
char[] sum = new char[4];
for(i=0; i < 4; i++){
sum[i] = char(array[i] + array2[i]);
System.out.print(sum[i] + " ");
}
我的回答是“b''b”当我运行它,所以它似乎有些ASCII转换正在发生的事情我猜?我的预期答案应该是“2101”,我意识到问题出在我的演员身上,我只是不知道如何继续。 Sum必须保留为字符数组作为程序参数的一部分。
编辑:我知道使用一个int数组总和将解决这个问题。正如我在我原来的文章中所说的,sum必须是一个字符数组作为这个项目的参数的一部分。
为什么不用'int []'来代替? –
字符不是数字,你为什么期待'1'+'1'='2'? –
sum [i] = char(array1 [i])+ char(array2 [i]); – sp1rs