C#で降順に並べ替える方法(orderby descendingの使い方)
C#では、LINQのorderby 〜 descendingを使うことで、コレクション内の要素を降順(大きい順・逆アルファベット順)に並べ替えることができます。通常のorderbyは昇順がデフォルトですが、キーワードとしてdescendingを付けるだけで簡単に降順へ切り替えられます。
サンプルデータの準備
まず、並べ替え対象となるリストを用意します。ここでは従業員情報を持つEmployeeクラスのリストを使用します。
IList<Employee> emp = new List<Employee>() {
new Employee() { EmployeeRank = 3, EmpName = "Tom", EmpMarks = 90 },
new Employee() { EmployeeRank = 4, EmpName = "Katie", EmpMarks = 95 }
};orderby descendingで降順ソートする
次に、このリストを名前(EmpName)を基準に並べ替えます。デフォルトは昇順のため、降順にしたい場合はクエリ式にdescendingを指定します。
var res = from str in emp orderby str.EmpName descending select str;
完全なコード例
以下は、上記の処理を実行する完全なサンプルプログラムです。
using System;
using System.Linq;
using System.Collections.Generic;
public class Demo {
public static void Main() {
IList<Employee> emp = new List<Employee>() {
new Employee() { EmployeeRank = 4, EmpName = "Amit", EmpMarks = 90 },
new Employee() { EmployeeRank = 05, EmpName = "Raman", EmpMarks = 95 }
};
var res = from str in emp orderby str.EmpName descending select str;
Console.WriteLine("学生リスト(降順):");
foreach (var list in res)
Console.WriteLine(list.EmpName);
}
}
public class Employee {
public int EmployeeRank { get; set; }
public string EmpName { get; set; }
public int EmpMarks { get; set; }
}
実行結果
プログラムを実行すると、名前が降順(Z→Aの順)で表示されます。
学生リスト(降順):
Raman
Amit
補足:メソッド構文での書き方
クエリ構文の代わりに、メソッド構文(拡張メソッド)を使って同じ処理を書くこともできます。
var res = emp.OrderByDescending(str => str.EmpName);
どちらの書き方でも結果は同じですが、メソッド構文の方が簡潔に書けるため、実務ではこちらもよく使われます。数値や日付など、文字列以外のプロパティに対しても同様にdescendingを指定することで降順ソートが可能です。
-
JavaScriptで配列が昇順・降順・未ソートのどれかを判定する方法
はじめにJavaScriptでは、数値の配列を受け取り、その要素が昇順(増加順)、降順(減少順)、あるいは特定の順序なし(未ソート)のどれに該当するかを判定する関数を作成できます。本記事では、そのような判定を行う関数の実装方法と、コードの動作原理について詳しく解説します。求められる仕様今回作成する関数は、以下の条件を満たす必要があります。数値の配列を引数として受け取る要素が増加傾向なら「ascending」を返す要素が減少傾向なら「descending」を返す順序に一貫性がない場合は「unsorted」を返す配列の要素が1つ以下の場合は「not enough items」(要素が不足しています
-
Android SQLiteでレコードを降順(DESC)に表示する方法を解説
AndroidのSQLiteとは? 実装例に入る前に、まずAndroidにおけるSQLiteデータベースについて簡単におさらいしておきましょう。SQLiteは、デバイス上のテキストファイルにデータを保存できるオープンソースのSQLデータベースです。AndroidにはSQLiteの実装が標準で組み込まれており、リレーショナルデータベースの主要な機能をすべて利用できます。さらに、JDBCやODBCのような接続確立処理を特に行う必要がないため、非常に手軽に扱える点も大きな魅力です。 本記事では、AndroidのSQLiteで登録済みのレコードを降順(DESC)で表示する方法を、サンプルコードとともに