1

我已经做了一个初始化ValueTuples数组的扩展方法,并意识到它可以通过两种不同的方式完成。我可以用新元组替换数组元素,或者更改现有元素的属性(因为ValueTuple<T1, T2>结构是可变的)。我想知道使用一种方法或另一种方法之间是否有任何实际区别。以下是候选人:

public static void Initialize1<T1, T2>(this ValueTuple<T1, T2>[] array,
    T1 item1, T2 item2)
{
    for (int i = 0; i < array.Length; i++)
    {
        array[i] = (item1, item2);
    }
}

public static void Initialize2<T1, T2>(this ValueTuple<T1, T2>[] array,
    T1 item1, T2 item2)
{
    for (int i = 0; i < array.Length; i++)
    {
        array[i].Item1 = item1;
        array[i].Item2 = item2;
    }
}
4

0 回答 0