あるオブジェクトを配列に入れ、そのオブジェクトが持つ変数(ここでは time
という時刻の文字列)で、その配列をソートした時のMEMOです。
Array.Sortでソート
例として、
public class ProgramsListItem { public Program program; public string time; public bool done = false; }
こんなような ProgramsListItem
クラスのインスタンスを
ProgramsListItem[] specialPrograms;
のように specialPrograms
という配列に入れていたとします。このオブジェクトの time
変数には、「02:07:00」とか「02:10:00」のように時刻の文字列が入っています。Array
を使うので「using System;
」しときます。
時刻の早い順(昇順)に並べるには、
Array.Sort(specialPrograms, (a, b) => (int)DateTime.Parse(a.time).Ticks - (int)DateTime.Parse(b.time).Ticks);
とし、時刻の遅い順に並べ替える(降順)には、
Array.Sort(specialPrograms, (a, b) => (int)DateTime.Parse(b.time).Ticks - (int)DateTime.Parse(a.time).Ticks);
として、これらの行を通過すると、時刻順にソートできました。
東京造形大学卒業後、マクロメディア(現アドビ)に入社。QAやテクニカルサポートマネージャーとしてFlash、DreamweaverなどのWeb製品を担当。独立後、2007年に虫カゴデザインスタジオ株式会社を設立。2021年東京三鷹を拠点に。最近は、CakePHP、Laravel、Unity、ZBrush、Modo、Adobe Substance 3D、Adobe Firefly、Xcode、Firebaseにフォーカスしています。モバイルアプリ開発情報を主としたブログ「MUSHIKAGO APPS MEMO」の中の人。