[解決済み] IList に項目の範囲を追加するには?
2023-03-24 23:53:07
質問
この質問には
AddRange()
メソッドはありません。
IList<T>
.
どのようにしたら、項目のリストを
IList<T>
に追加するにはどうしたらよいでしょうか。
Add()
メソッドを使用せずに?
どのように解決するのですか?
AddRange
は
List<T>
で定義され、インターフェースではありません。
として変数を宣言することができます。
List<T>
の代わりに
IList<T>
にキャストするか
List<T>
にアクセスするために
AddRange
.
((List<myType>)myIList).AddRange(anotherList);
これは良い習慣ではありません(以下のコメントを参照)。
IList<T>
は
ではなく
である
List<T>
ではなく、インターフェイスを実装した他の型であるため、そのような型には
AddRange
メソッドを持たないかもしれません。そのような場合、コードが実行時に例外をスローしたときにのみ知ることができます。
ですから、その型が本当に
List<T>
であることが確実でない限り
AddRange
.
一つの方法として、型をテストするために は または として 演算子として使用できます (C# 7 以降)。
if(myIList is List<T>)
{
// can cast and AddRange
}
else
{
// iterate with Add
}
関連
-
[解決済み] for'ループでインデックスにアクセスする?
-
[解決済み] enumを列挙するには
-
[解決済み] リスト内のアイテムのインデックスを検索する
-
[解決済み] Java Mapの各エントリを効率的に反復処理するには?
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み] ArrayListの初期化を1行で行う。
-
[解決済み] 割り当て後にリストが予期せず変更されました。その理由と防止策を教えてください。
-
[解決済み] リストを均等な大きさの塊に分割するには?
-
[解決済み] C#で文字列のエンコーディングを手動で指定せずに、一貫性のあるバイト表現を得るには?
-
[解決済み] インデックスを指定してリストから要素を削除する方法
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】スクリプトクラスが見つからないので、スクリプトコンポーネントを追加できない?
-
[解決済み】C#で四捨五入する方法
-
[解決済み】Excel "外部テーブルが期待された形式ではありません。"
-
[解決済み] [Solved] アセンブリ System.Web.Extensions dll はどこにありますか?
-
[解決済み] 'IEnumerable<SelectListItem>' 型の ViewData アイテムで、キーが国であるものは存在しない。
-
[解決済み】なぜこのコードはInvalidOperationExceptionを投げるのですか?
-
[解決済み] ...基礎となる接続は閉じられました。予期しないエラーが受信で発生しました
-
[解決済み】「namespace」なのに「type」のように使われる。
-
[解決済み】データが存在しないのに読み込もうとする試みが無効である
-
[解決済み】スレッド終了またはアプリケーションの要求により、I/O操作が中断されました。