Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

เมธอด ThenBy ของ C# LINQ

จัดลำดับองค์ประกอบในลำดับ (sequence) โดยใช้เมธอด ThenBy()

เรามีอาร์เรย์สตริงดังนี้:

string[] str = { "AAA", "AAAA", "A", "AAAAA", "AAAAAAAAA" };

ตอนนี้ ให้ใช้ Lambda Expressions และกำหนดเงื่อนไขภายในเมธอด ThenBy() เพื่อจัดเรียงสตริงตามจำนวนตัวอักษรที่มี

IEnumerable<string> res = str.AsQueryable()
    .OrderBy(alp => alp.Length)
    .ThenBy(alp => alp);

ตัวอย่าง

using System;
using System.Linq;
using System.Collections.Generic;

public class Demo
{
    public static void Main()
    {
        string[] str = { "AAA", "AAAA", "A", "AAAAA", "AAAAAAAAA" };
        IEnumerable<string> res = str.AsQueryable()
            .OrderBy(alp => alp.Length)
            .ThenBy(alp => alp);
        
        foreach (string arr in res)
            Console.WriteLine(arr);
    }
}

ผลลัพธ์

A AAA AAAA AAAAA AAAAAAAAA