chr [k] = byte(chp [i] -chq [j]); //问题CodeConversion从字节到int
问题在于类型转换。我看到了各种各样的答案,并且在实施时无法解决。 如何清除上面代码中的Syntex错误
chr [k] = byte(chp [i] -chq [j]); //问题CodeConversion从字节到int
问题在于类型转换。我看到了各种各样的答案,并且在实施时无法解决。 如何清除上面代码中的Syntex错误
使用((字节)一些表达式)而不是字节(某些表达式)。
Thanku MirMasej,编辑代码user3062946复制粘贴错误分别是对不起 – Jack 2014-09-05 17:53:51
您是否试图比较两个相等长度字符串之间的数字差异(char by char)?我很抱歉,但你对这个问题的解释还有很多不足之处。
如果我试图解决比较两个字符串之间的数值差的问题,我可能会拿出这样的:
char[] a = "cd".toCharArray();
char[] b = "aa".toCharArray();
int i = 0;
int sum = 0;
while (a.length == b.length && i < a.length)
{
if (a[i] > b[i])
sum += (a[i]-b[i]);
else
sum += (b[i])-a[i];
i++;
}
System.out.println("Total character difference: " + sum);
这应该涵盖所有情况的......假设我理解正确的你在问什么。
是的,但是我的代码中有什么问题(具体转换类型) – Jack 2014-09-05 17:40:44
我没有看到类型转换有任何问题......但是您在if和else情况下执行相同的算术运算。你不应该在'else'情况下做'chr [k] = byte(chq [i] -chp [j]);'' – user3062946 2014-09-05 17:43:56
此外,在字节相同的情况下,你设置'ch [k] = 0,我假设你的意思是设置'chr [k] = 0' ...你也不会增加'i '在你的循环的'else'情况下 – user3062946 2014-09-05 17:44:50
Java使用C风格的转换语法。 – user2357112 2014-09-05 17:18:42
好的,但我如何纠正它? – Jack 2014-09-05 17:20:55