array.SkipWhile

現在の配列内の先頭から指定された条件を満たす間要素を除いた配列を取得します


taiseiue | 2024-12-01

定義

名前空間: Alice
アセンブリ: Losetta.Runtime.dll
ソースコード: Alice.Core.Array.cs

SkipWhile(delegate)

現在の配列内の先頭から指定された条件を満たす間要素を除いた配列を取得します

AliceScript
class Alice.Array;
public array SkipWhile(delegate condition);
引数
condition 条件を満たす間スキップする条件を表す式
戻り値
array 先頭からconditionを満たす間の要素を除いた配列

対応
AliceScript 2.2、2.3、3.0
AliceSister 2.2、2.3、3.0
Losetta 0.9、0.10

以下は、123,4,0の先頭から3未満の要素を除いた配列を取得します。

AliceScript
var a = [1,2,3,4,0];
print(a.SkipWhile(item => item < 3)); // 出力例 : [3,4,0]

この例で注目されたいのは最後の0は取得される要素に含まれないことです。条件を満たさないすべての要素を取得したい場合はWhereメソッドを使用してくださ たとえば、次のようにします。

AliceScript
var a = [1,2,3,4,0];
print(a.Where(item => !(item < 3)); // 出力例 : [3,4]

ちなみに、OrderByメソッドを使用して並べ替えた後でこのメソッドを使用するという方法もあります。

AliceScript
var a = [1,2,3,4,0];
print(a.OrderBy().SkipWhile(item => item < 3)); // 出力例 : [3,4]