gpt4 book ai didi

c# - 扩展和过滤 C# 数组

转载 作者:太空狗 更新时间:2023-10-30 00:08:24 28 4
gpt4 key购买 nike

我做了很多 List<SomeType> -> SomeType[]最近转换,尤其是当我过滤或扩展数组时。

例如过滤:

// filter the list
var memberList = new List<MemberType>();
foreach (var member in members)
{
if (member.someProperty != sentinalValue)
{
memberList.Add(member);
}
}
// overwrite the old array with a new on dimensioned correctly
members = new MemberType[memberList.Count];
memberList.CopyTo(members);

或扩展:

// create the new member
var newMember = new MemeberType();
// create a new array to hold the extended members
newMembers = new MemberType[members.Length + 1];
// copy over the old members
members.CopyTo(newMembers, 0);
// add the new member
newMembers[members.Length] = newMember;
// overwrite old array with new array containing new member
members = newMembers;

由于我们使用的 XML 序列化类,我必须使用数组 (MemberType[]) 而不是一个很好的通用集合。我相信有一种更好的方法来完成这种简单的事情,所以如果您知道一种方法(不会增加不必要的复杂性)请告诉我。

最佳答案

有一些扩展方法可以完全按照您的描述进行操作:

var membersList = members.ToArray();

关于c# - 扩展和过滤 C# 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8842442/

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