我不知道您的项目以及您的实际问题是什么。但是我从您的部分信息中猜测,正如您所解释的,您有多组位表示的字符串。
str1 = "1000110.....11";
str1 = "1110110.....01"; etc
添加这些十进制值会产生模棱两可的结果,因为整数可以是多个整数值的总和。请看下面的示例,其中总共有 5 种可能性 [具有正十进制值] 产生 6。
1+5 = 6;
2+4 = 6;
3+3 = 6;
4+2 = 6;
5+1 = 6;
如果你以这种方式继续,你只会犯一个错误,在你的情况下没有别的。一种更好的解决方案是计算单个字符串的十进制值。无需添加(+)它们,只需将它们连接(连接)以形成单个字符串。我建议这种方法是因为,这总是给出一个唯一的值,以后您可能需要知道各个字符串的十进制值。
String strVal1 = String.format(computeDecimal(str1));
String strVal2 = String.format(computeDecimal(str2));
String strVal3 = String.format(computeDecimal(str3));
.
.
.
String strValn = String.format(computeDecimal(strn));
String myVal = String.concate(strVal1,strVal1,strVal1,....strValn);
现在您可以按照自己的意愿对待您的字符串。
//This will give you a non conflicting result.
比BigIntegers更好地实施上述方法。
希望这对您有很大帮助。