どうも、ちょげ(@chogetarou)です。
Linqを使って文字列の配列(Array)を長さで昇順にソートする方法を紹介します。
方法

Linqを使って文字列の配列(Array)を長さで昇順にソートするには、OrderBy()を使います。
まず、文字列の配列からOrderBy()を呼び出します。
OrderBy()の引数に、引数のLengthプロパティを返すラムダ式を指定します。
そして、OrderBy()からToArray()を呼び出します。
result = array.OrderBy(x => x.Length).ToArray();
上記の「array.OrderBy(x => x.Length).ToArray()」は、OrderBy()を呼び出した文字列の配列を、長さで昇順にソートした新しい配列を生成します。
使用例
using System;
using System.Linq;
public class Example
{
public static void Main()
{
string[] myArray = new string[5] { "b", "accaa", "cd", "daca", "lea"};
myArray = myArray.OrderBy(x => x.Length).ToArray();
foreach (var i in myArray)
{
Console.WriteLine(i);
}
}
}

コメント