gpt4 book ai didi

c# - 与例如相比,Array.ConvertAll 的实际用途是什么?通过foreach遍历数组?

转载 作者:太空狗 更新时间:2023-10-29 22:16:36 27 4
gpt4 key购买 nike

我的问题比较笼统,因此,我不会提供任何代码(除非有人要我添加它,但我认为我的问题已经足够清楚了)。我一直在看两篇关于 Array.ConvertAll 方法的文章,但我自己找不到直接使用它的方法。我读过的文章:

http://msdn.microsoft.com/en-us/library/exc45z53.aspx

“转换器”(文章底部):http://www.codeproject.com/Articles/117611/Delegates-in-C-Attempt-to-look-inside-Part-4

现在我了解转换器的工作原理和使用方法,但是,我看不到它的直接必要性。由于一个对象如何转换为另一个对象的实际方法必须完全确定(例如,在代码项目链接方法“ConvertToPersonInfo”或 arroding Action/Lambda 类型委托(delegate)中),是否不仅可以声明和实例化新对象的新数组并对旧对象的旧数组执行 foreach 循环并在该循环内复制所需的变量?

根据微软的文章,旧数组没有受到任何影响,所以最终效果不会有什么不同。

我是不是漏掉了一点,没有理解 Converter,还是真的一样?

最佳答案

当然你也可以自己做。它只是一种通过创建数组并为您执行循环来简化转换的方法。

例如:

 int[] newArr = new int[oldArr.Length];
for (int i = 0; i < oldArr.Length; i++) {
newArr[i] = Convert.ToInt32(oldArr[i]);
}

对比只是:

 int[] newArr = Array.ConvertAll(oldArr, Convert.ToInt32);

关于c# - 与例如相比,Array.ConvertAll 的实际用途是什么?通过foreach遍历数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12964702/

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