当前位置: 首页>>代码示例>>C#>>正文


C# System.Linq.Last方法代码示例

本文整理汇总了C#中System.Linq.Last方法的典型用法代码示例。如果您正苦于以下问题:C# System.Linq.Last方法的具体用法?C# System.Linq.Last怎么用?C# System.Linq.Last使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Linq的用法示例。


在下文中一共展示了System.Linq.Last方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Execute

        public void Execute()
        {
            var languages = new[] {"csharp", "visualbasic", "java", "python", "ruby", "php", "c++"};

            //
            // First拡張メソッドは、シーケンスの最初の要素を返すメソッド。
            //
            // predicateを指定した場合は、その条件に合致する最初の要素が返る。
            //
            Output.WriteLine("============ First ============");
            Output.WriteLine(languages.First());
            Output.WriteLine(languages.First(item => item.StartsWith("v")));

            //
            // Last拡張メソッドは、シーケンスの最後の要素を返すメソッド。
            //
            // predicateを指定した場合は、その条件に合致する最後の要素が返る。
            //
            Output.WriteLine("============ Last ============");
            Output.WriteLine(languages.Last());
            Output.WriteLine(languages.Last(item => item.StartsWith("p")));

            //
            // Single拡張メソッドは、シーケンスの唯一の要素を返すメソッド。
            //
            // Singleを利用する場合、対象となるシーケンスには要素が一つだけ
            // でないといけない。複数の要素が存在する場合例外が発生する。
            //
            // また、空のシーケンスに対してSingleを呼ぶと例外が発生する。
            //
            // predicateを指定した場合は、その条件に合致するシーケンスの唯一の
            // 要素が返される。この場合も、結果のシーケンスには要素が一つだけの
            // 状態である必要がある。条件に合致する要素が複数であると例外が発生する、
            //
            Output.WriteLine("============ Single ============");
            var onlyOne = new[] {"csharp"};
            Output.WriteLine(onlyOne.Single());

            try
            {
                // ReSharper disable once UnusedVariable
                var val = languages.Single();
            }
            catch
            {
                Output.WriteLine("複数の要素が存在する状態でSingleを呼ぶと例外が発生する。");
            }

            Output.WriteLine(languages.Single(item => item.EndsWith("y")));

            try
            {
                // ReSharper disable once UnusedVariable
                var val = languages.Single(item => item.StartsWith("p"));
            }
            catch
            {
                Output.WriteLine("条件に合致する要素が複数存在する場合例外が発生する。");
            }
        }
开发者ID:devlights,项目名称:Sazare,代码行数:60,代码来源:LinqSamples45.cs

示例2: Append_adds_item_to_end_of_sequence

        public void Append_adds_item_to_end_of_sequence()
        {
            var result = new[] { 1, 2 }.Append(3);

            Assert.Equal(3, result.Count());
            Assert.Equal(1, result.First());
            Assert.Equal(3, result.Last());
        }
开发者ID:christiandpena,项目名称:entityframework,代码行数:8,代码来源:IEnumerableExtensionsTests.cs

示例3: Prepend_adds_item_to_beginning_of_sequence

        public void Prepend_adds_item_to_beginning_of_sequence()
        {
            var result = new[] { 2, 3 }.Prepend(1);

            Assert.Equal(3, result.Count());
            Assert.Equal(1, result.First());
            Assert.Equal(3, result.Last());
        }
开发者ID:christiandpena,项目名称:entityframework,代码行数:8,代码来源:IEnumerableExtensionsTests.cs

示例4: Should_fill_an_incomplete_set_if_requested

 public void Should_fill_an_incomplete_set_if_requested()
 {
     var nums = new[] { 1, 2, 3, 4, 5, 6, 7 };
     const int numberInSet = 2;
     const int fillValue = 9;
     var pairs = nums.InSetsOf(numberInSet, true, fillValue).ToArray();
     var last = pairs.Last();
     last.Count.ShouldBeEqualTo(numberInSet);
     last[0].ShouldBeEqualTo(nums.Last());
     last[1].ShouldBeEqualTo(fillValue);
 }
开发者ID:BarakUgav61,项目名称:Scratch,代码行数:11,代码来源:Tests.cs

示例5: 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 );
        }
开发者ID:werwolfby,项目名称:wolfgenerator,代码行数:38,代码来源:StatementPositionUnitTest.cs

示例6: ReturnsAnEnumerableWithTheAdditionalItemsAtTheEnd

        public void ReturnsAnEnumerableWithTheAdditionalItemsAtTheEnd()
        {
            var collection = new[] { 1, 2, 3 }.Concat(4);

            Assert.That(collection.Last(), Is.EqualTo(4));
        }
开发者ID:RockFramework,项目名称:Rock.Core,代码行数:6,代码来源:ConcatExtensionsTests.cs

示例7: ThrowExceptionOnLast1

        private static void ThrowExceptionOnLast1()
        {
            var numbers = new[] { 3, 4 };

            numbers.Last(x => x == 5);
        }
开发者ID:txdv,项目名称:Testing,代码行数:6,代码来源:TestLinqElementOperators.cs


注:本文中的System.Linq.Last方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。