C# リストを逆順に処理する

foreachでリストを逆順に処理する方法ってどっかで見たような気がするんだけど、改めて探してみると見つからない。
なにかの記事で読んだ気がするんだけど記憶違いか?c++で言うリバースイテレータの処理と同じ事やりたんだけど、なかったかな?

forで逆順に処理するか、foreachで以下のような書き方すれば済むんだけど、なんかスマートさに欠ける。方法ないんだろうか?

// 逆順で処理したいのでリストを逆転する
items.Reverse();
foreach (MyItem item in items)
{
// itemに対する処理ここで行う
}
// 処理が終わったのでリストを再逆転して元に戻す

items.Reverse();

// たぶんこれだ
foreach (MyItem item in items.Reverse())
{
// itemに対する処理ここで行う
}

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です