我有这样一个数组:

int[] fourbits = new int[4];
fourbits[0] = neuroninputs.input1;
fourbits[1] = neuroninputs.input2;
fourbits[2] = neuroninputs.input3;
fourbits[3] = neuroninputs.input4;

每个元素都包含一个二进制值。例如:
Console.WriteLine(fourbits[0]);

产出1。
我要做的是从这个数组(1010)中获取每个值,并将其转换为十进制,然后打印这个值(10)。

最佳答案

首先使用string将所有位连接到String.Join中,然后使用指定Convert.ToInt32参数的base方法。

var value = Convert.ToInt32(string.Join("", fourbits), 2);

Console.WriteLine(value);

注意:为了将基本参数指定为ones,需要确保数组只包含zeros2。否则您将得到FormatException

08-06 04:17