[解決済み] List<T>はアイテムが追加された順番に返されることを保証しますか?
質問
を使用することはできますか?
List<T>
は常に、列挙されたときに追加された順序で項目が返されることを保証しますか?
更新
: みなさん、回答ありがとうございました!これで安心です。私はざっと調べてみたところ
List<T>
クラスを.NET Reflectorでざっと調べてみましたが(最初の段階でそうすべきだったかもしれません)、実際、基礎となるストアは
T
(
T[]
).
どのように解決するのですか?
リストはインデックスベースで、新しい項目は常にリストの末尾に追加されます。あるインデックスでアイテムを挿入すると、次のアイテムが1つ移動します。
そのため はい を使用することができます。 安全に そのように
List(T)クラスは、ArrayListクラスの総称です。 ArrayListクラスと同等です。これは IList(T) ジェネリックインターフェースを実装しています。 インターフェイスを実装しています。 を実装しています。
このコレクション内の要素は 整数のインデックスを使用してアクセスすることができます。 このコレクションのインデックスは ゼロベースです。
List(T)はソートされていることを保証するものではありません。 ソートされています。リスト(T)をソートする必要があります。 を必要とする操作 (たとえば バイナリサーチのような) 操作を行う前にソートしておく必要があります。 をソートする必要があります。
List(T)は、複数の読者を同時にサポートすることができます。 を同時にサポートすることができます。 コレクションが変更されない限り、複数の読者を同時にサポートすることができます。 コレクションを列挙することは 本質的にスレッドセーフではありません。 手続きではありません。稀なケースとして 列挙が1つまたは複数の 書き込みアクセスに遭遇した場合、スレッドセーフを確保する唯一の方法 スレッドセーフを確保する唯一の方法は、コレクションを コレクションをロックすることです。 である。コレクションを許可するには を複数のスレッドからアクセスできるようにするには 読み書きのために複数のスレッドからアクセスできるようにするには 独自の同期を実装する必要があります。
で詳細を読むことができます。 MSDN .
関連
-
[解決済み】警告。同じ依存アセンブリの異なるバージョン間で競合が見つかりました。
-
[解決済み] フレームワークとアーキテクチャの違いは何ですか?[クローズド]
-
[解決済み] LINQ to Entitiesはメソッドを認識しません。
-
[解決済み] 権限 '*' を持つ SSL/TLS の安全なチャネルを確立できませんでした。
-
[解決済み] 埋め込みリソーステキストファイルの読み方
-
[解決済み] リストに対して max()/min() を使用して、返された最大または最小の項目のインデックスを取得する
-
[解決済み】JSONのリストで要素の順番は守られますか?
-
[解決済み】Web Apiでリクエストに一致するアクションが複数見つかった。
-
[解決済み】List<T>は挿入順序を保証するか?
-
[解決済み] 2つのコレクションを比較し、アイテムの順序に関係なく等しいかどうかを確認する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] msiexec を使用せずにコマンドラインから MSI ファイルをアンインストールする
-
[解決済み] C++/CLIにおけるキャレット('^')の意味は?
-
[解決済み] VB.NETで線を引く方法
-
[解決済み] AssemblyInfo.csは何に使うのですか?
-
[解決済み] VB.NETでファイル名を一意のサフィックスに変更するには?
-
[解決済み] Powershell v3 Invoke-WebRequest HTTPSエラー
-
[解決済み] このコンピュータには、.NET Framework 4.6またはそれ以降の更新プログラムがすでにインストールされています。
-
[解決済み] 埋め込みリソーステキストファイルの読み方
-
[解決済み] System.Timers.Timer vs System.Threading.Timer
-
[解決済み】List<T>は挿入順序を保証するか?