我有一个byte列表,我想在其中更新某些元素。列表allIntNumbers包含很多数据,但是,我只想更新某些元素。这些元素位于顺序索引中。下面是示例代码:

List<byte> allIntNumbers = new List<byte>();
byte[] myIntBytes = new byte[] {0, 1, 2, 3}; //4 bytes
allIntNumbers[0] = myIntBytes[0]; allIntNumbers[1] = myIntBytes[1];
allIntNumbers[2] = myIntBytes[2]; allIntNumbers[3] = myIntBytes[3];


在上面的示例中,列表allIntNumbers包含许多元素,但是现在显示在上面的代码片段中。我想更改allIntNumbers的前4个元素。因此,我通过访问索引分配了每个元素。

但是,我相信应该有更好的方法来做到这一点。 PS:我在SO中发现了某些类似的问题,但它们都与自定义对象有关,例如它们自己的类(即Person等)。我不确定遵循这些问题是否更好。

最佳答案

如果它们是一对一的,则可以使用简单的for循环

var allIntNumbers = new List<byte>();
var myIntBytes = new byte[] { 0, 1, 2, 3 }; //4 bytes

for (var i = 0; i < myIntBytes.Length; i++)
{
   allIntNumbers[i] = myIntBytes[i];
}

关于c# - 更新位于C#中List内顺序索引中的元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48002463/

10-12 12:44