どうも、ちょげ(@chogetarou)です。
Take()を使って配列(Array)の末尾からN個の要素を削除する方法を紹介します。
方法

Take()を使って配列(Array)の末尾からN個の要素を削除するには、Lengthプロパティを使います。
まず、System.Linqを導入します。
using System.Linq;
次に、配列(Array)からTake()を呼び出します。
Take()の引数に配列(Array)の長さを削除する要素数で引いた値を指定します。
配列(Array)の長さは、Lengthプロパティで取得します。
そして、Take()からToArray()を呼び出します。
//N=削除する要素数
T[] result = array.Take(array.Length - N).ToArray();
上記のToArray()は、Take()を呼び出した配列(Array)の後ろからN個の要素を削除した配列を返します。(呼び出した配列に影響なし)
使用例
using System;
using System.Linq;
public class Sample
{
public static void Main()
{
int[] numbers = new int[6]{ 1, 2, 3, 4, 5, 6 };
int n = 3;
int[] result = numbers.Take(numbers.Length - n).ToArray();
foreach (int x in result)
{
Console.WriteLine(x);
}
}
}
出力:
1
2
3
コメント