C# 配列から要素を効率的に削除するにはどうすればよいですか?
C# で配列要素を削除する効率的な方法
C# では、配列は同じ型の値を格納する連続したメモリ ブロックとして実装されます。ただし、ArrayList などの他のコレクションとは異なり、配列の要素操作の柔軟性は限られています。配列からの要素の削除を処理する方法は次のとおりです:
値による要素の削除
特定の値のすべてのインスタンスを削除するには、.Where() LINQ 拡張メソッド (.NET Framework 3.5 以降を対象とする場合) または .NET Framework 2.0 の Array.FindAll() メソッドを使用できます。次のコードを考えてみましょう:
int[] numbers = { 1, 3, 4, 9, 2 }; int numToRemove = 4; // LINQ numbers = numbers.Where(val => val != numToRemove).ToArray(); // 非LINQ numbers = Array.FindAll(numbers, isNotFour).ToArray(); bool isNotFour(int n) { return n != 4; }
値の最初のインスタンスを削除します
値の最初のインスタンスのみを削除したい場合は、LINQ または非 LINQ アプローチを再度利用できます。
int[] numbers = { 1, 3, 4, 9, 2, 4 }; int numToRemove = 4; // LINQ int numIdx = Array.IndexOf(numbers, numToRemove); numbers = numbers.Where((val, idx) => idx != numIdx).ToArray(); // 非LINQ int numIdx = Array.IndexOf(numbers, numToRemove); List<int> tmp = new List<int>(numbers); tmp.RemoveAt(numIdx); numbers = tmp.ToArray();
要約すると、配列は効率的な要素の保存と取得を提供しますが、要素操作の柔軟性が限られているため、RemoveAt() などのメソッドは不適切です。代わりに、上で概説した方法は、配列から値を削除するための効率的な代替手段を提供します。
以上がC# 配列から要素を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











C言語関数によって返される値の種類は何ですか?返品値を決定するものは何ですか?

STL(ソート、検索、変換など)のアルゴリズムを効率的に使用するにはどうすればよいですか?
