本文整理汇总了C#中System.Linq.Take方法的典型用法代码示例。如果您正苦于以下问题:C# System.Linq.Take方法的具体用法?C# System.Linq.Take怎么用?C# System.Linq.Take使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Linq
的用法示例。
在下文中一共展示了System.Linq.Take方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Execute
public void Execute()
{
//
// Take拡張メソッドは、シーケンスの先頭から指定された件数分を返すメソッド。
//
// ・シーケンスの要素数より多い数を指定した場合、そのシーケンス全てが返る.
// ・0以下の値を指定した場合、空のシーケンスが返る.
//
var names = new[] {"gsf_zero1", "gsf_zero2", "gsf_zero3", "gsf_zero4", "gsf_zero5"};
Output.WriteLine("================ Take ======================");
var top3 = names.Take(3);
foreach (var item in top3)
{
Output.WriteLine(item);
}
foreach (var item in names.Take(20))
{
Output.WriteLine(item);
}
Output.WriteLine("0以下の数値を指定: COUNT={0}", names.Take(-1).Count());
//
// TakeWhile拡張メソッドは、指定された条件が満たされる間シーケンスから要素を抽出し
// 返すメソッド。
//
Output.WriteLine("================ TakeWhile ======================");
var lessThan4 = names.TakeWhile(name => int.Parse(name.Last().ToString()) <= 4);
foreach (var item in lessThan4)
{
Output.WriteLine(item);
}
}
示例2: PicksUpFromWhereItLeft
public void PicksUpFromWhereItLeft()
{
var allMigrations = new[]
{
new TestMigration(1, "test", "CREATE TABLE [Table1] ([Id] int)"),
new TestMigration(2, "test", "CREATE TABLE [Table2] ([Id] int)"),
new TestMigration(3, "test", "CREATE TABLE [Table3] ([Id] int)"),
};
_migrator.Execute(allMigrations.Take(2));
var tableNameAfterFirstTwoMigrations = GetTableNames();
_migrator.Execute(allMigrations);
var tableNameAfterAllMigrations = GetTableNames();
Assert.That(tableNameAfterFirstTwoMigrations, Is.EqualTo(new[] { "Table1", "Table2" }));
Assert.That(tableNameAfterAllMigrations, Is.EqualTo(new[] { "Table1", "Table2", "Table3" }));
}
示例3: StatementPositionTest
public void StatementPositionTest()
{
const string temp = "Test 123123123 ";
var strings = new[]
{
"<%ruleclass Test%>", // 0
"<%rule Temp()%>", // 1
temp + "<%= value %>", // 2 0, 1
"Pre End Text", // 3 2
"<%= value %>", // 4 3
"End Text", // 5 4
"<%end%>", // 6
};
const string endLine = "\r\n";
var statementText = string.Join( endLine, strings );
var ruleClassStatement = ParserHelper.ParseClass( statementText );
var textStatement1StartPos = string.Join( endLine, strings.Take(2).ToArray() ).Length + endLine.Length;
var textStatement1EndPos = textStatement1StartPos + temp.Length - 1;
var ruleMethodStatement = (RuleMethodStatement)ruleClassStatement.RuleMethodStatements[0];
AssertHelper.AssertStatementPosition( textStatement1StartPos, textStatement1EndPos,
ruleMethodStatement.Statements[0].StatementPosition );
// »звратный подсчЄт, дл¤ UnitTest'а плохой вариант, но так впадлу вручную считать
AssertHelper.AssertStatementPosition( 3, 3, temp.Length + 1, strings[2].Length, textStatement1EndPos + 1,
textStatement1EndPos + strings[2].Length - temp.Length,
ruleMethodStatement.Statements[1].StatementPosition );
TestText( endLine, strings, 3, 2, ruleMethodStatement.Statements[2].StatementPosition );
TestText( endLine, strings, 5, 1, ruleMethodStatement.Statements[4].StatementPosition );
AssertHelper.AssertStatementPosition( 1, strings.Length, 1, strings.Last().Length, 0, statementText.Length - 1,
ruleClassStatement.StatementPosition );
}
示例4: Test
public static void Test(Assert assert)
{
assert.Expect(8);
// TEST
var numbers = new[] { 1, 3, 5, 7, 9 };
var firstTwo = numbers.Take(2).ToArray();
assert.DeepEqual(firstTwo, new[] { 1, 3 }, "Take() the first two array elements");
// TEST
var lastThree = numbers.TakeFromLast(3).ToArray();
assert.DeepEqual(lastThree, new[] { 5, 7, 9 }, "TakeFromLast() the last three array elements");
// TEST
var exceptTwoLast = numbers.TakeExceptLast(2).ToArray();
assert.DeepEqual(exceptTwoLast, new[] { 1, 3, 5 }, "TakeExceptLast() the first array elements except the last two");
// TEST
var takeWhileLessTwo = numbers.TakeWhile((number) => number < 2).ToArray();
assert.DeepEqual(takeWhileLessTwo, new[] { 1 }, "TakeWhile() less two");
// TEST
var takeWhileSome = numbers.TakeWhile((number, index) => number - index <= 4).ToArray();
assert.DeepEqual(takeWhileSome, new[] { 1, 3, 5, 7 }, "TakeWhile() by value and index");
// TEST
var skipThree = numbers.Skip(3).ToArray();
assert.DeepEqual(skipThree, new[] { 7, 9 }, "Skip() the first three");
// TEST
var skipWhileLessNine = numbers.SkipWhile(number => number < 9).ToArray();
assert.DeepEqual(skipWhileLessNine, new[] { 9 }, "SkipWhile() less then 9");
// TEST
var skipWhileSome = numbers.SkipWhile((number, index) => number <= 3 && index < 2).ToArray();
assert.DeepEqual(skipWhileSome, new[] { 5, 7, 9 }, "SkipWhile() by value and index");
}
示例5: SlicingArrays
public void SlicingArrays()
{
var array = new[] { "peanut", "butter", "and", "jelly" };
Assert.AreEqual(new string[] { FILL_IN_THE_STRING, FILL_IN_THE_STRING}, array.Take(2).ToArray());
Assert.AreEqual(new string[] { FILL_IN_THE_STRING, FILL_IN_THE_STRING}, array.Skip(1).Take(2).ToArray());
}