3

fromIndexとtoIndexを指定してC#配列のサブセットを返すための最良の方法は何ですか?

明らかにループを使用できますが、他のアプローチはありますか?

これは、私が入力しようとしているメソッドシグネチャです。

public static FixedSizeList<T> FromExisting(FixedSizeList<T> fixedSizeList, Int32 fromIndex, Int32 toIndex)

FixedSizeListの内部実装は

private T[] _Array;
this._Array = new T[size];
4

3 に答える 3

9
myArray.Skip(fromIndex).Take(toIndex - fromIndex + 1);

編集:スキップとテイクの結果はIEnumerableであり、実際に使用するまでカウントはゼロになります。

やってみたら

        int[] myArray = {1, 2, 3, 4, 5};
        int[] subset = myArray.Skip(2).Take(2).ToArray();

サブセットは{3、4}になります

于 2011-03-07T03:01:11.133 に答える
3

リストには、CopyTo あなたが望むことをするべきメソッドがすでにあります。

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

これはメソッドのシグネチャです。

public void CopyTo( int index, T[] array, int arrayIndex,   int count )
于 2011-03-07T03:03:24.643 に答える
3

Array.Copyあなたが望むことをします。

于 2011-03-07T03:05:18.590 に答える