这是我要添加到二进制字符串的代码,我在res
字符串中得到了正确的值,但在执行结束时它仍然给我一个异常。字符串m1
&m2
的长度相等,每个为 28。我仍然尝试只运行循环 10 次来验证,但错误仍然存在。这适用于 的任何值i
,无论两个字符串的实际长度是大于还是小于。
public static String addMantissa(String m1,String m2)
{
String res=" ";
int c=0;
System.out.println("Length is " + m2.length());
int i=0;
while(i < m2.length())
{
System.out.print(" " + res.charAt(i));
if(m1.charAt(i)=='1' && m2.charAt(i)=='1')
{
if(c==0)
{
res+="0";
c=1;
}
else
{
res+="1";
c=1;
}
}
if(m1.charAt(i)=='1' && m2.charAt(i)=='0')
{
if(c==0)
{
res+="1";
c=0;
}
else
{
res+="0";
c=1;
}
}
if(m1.charAt(i)=='0' && m2.charAt(i)=='1')
{
if(c==0)
{
res+="1";
c=0;
}
else
{
res+="0";
c=1;
}
}
if(m1.charAt(i)=='0' && m2.charAt(i)=='0')
{
if(c==0)
{
res+="0";
c=0;
}
else
{
res+="1";
c=0;
}
}
i++;
}
return res;
}
提前致谢。