从数组转换为十进制

时间:2014-03-26 14:23:16

标签: c# arrays

我有一个数组:

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)。

1 个答案:

答案 0 :(得分:3)

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

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

Console.WriteLine(value);

注意:您需要确保您的数组仅包含oneszeros,以便将基本参数指定为2。否则,您将获得FormatException