【发布时间】:2021-04-01 06:22:09
【问题描述】:
有没有更简洁的方法来反转布尔数组?
var myBoolArray=new bool[]{true, true, true, true, true};
bool[] revertedArray=new bool[5];
for(int i=0;i<myBoolArray.Length;i++)
{
revertedArray[i]=!myBoolArray[i];
}
Atm 我正在这样做,但它看起来真的很难看。
【问题讨论】:
-
new bool[5], 你怎么知道它的长度是 5?为什么不是基于myBoolArray.Lenght? -
老实说,
bool[]是存储位数据的最糟糕的方式(至少不会变得愚蠢);在这种情况下,int(甚至是byte)将是非常可取的,但是对于未知的可能大的长度(而不是“最多 32”、“最多 64”等)有BitArray,其中也有一个Not()方法;猜猜Not()做了什么! -
呃...这只是一个与真实代码相比的简单示例。