gpt4 book ai didi

java - 字符串的二进制加法

转载 作者:行者123 更新时间:2023-11-30 07:40:25 24 4
gpt4 key购买 nike

我需要组合一个字符串数组,如下所示(因此结果字符串中的每个字符都是输入字符串中字符的按位 &)

String a = "10110001"
String b = "01101101"
String c = "10101011"

String result = "00100001"

我想出的解决方案:

long resultLong = 0;

for( String a : inputs )
{
resultLong = resultLong & Long.parseLong( a ,2);
}

String result = Long.toBinaryString( resultLong );

输入字符串中的字符数可能很长,上述解决方案将不起作用 (NumberFormatException) 。我不知道如何实现这个,最干净的方法是什么?

最佳答案

如果 Long 不足以满足您的用例,那么您可以使用 BigInteger

BigInteger(String val, int radix);

它以字符串和基数作为参数。

BigInteger result = new BigInteger(inputs[0], 2);

for (int i = 1; i < inputs.length; i++) {
result = result.and(new BigInteger(inputs[i], 2));
}

String resultStr = result.toString(2);

关于java - 字符串的二进制加法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57803844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com