C#配列、配列内のデータを互いに区別する方法は?例えば
string[] a = {"a","b","a","c","b","b","c","a"};
取得する方法
string[]b = {"a","b","c"}
C#配列、配列内のデータを互いに区別する方法は?例えば
string[] a = {"a","b","a","c","b","b","c","a"};
取得する方法
string[]b = {"a","b","c"}
最も簡単な方法は、LINQDistinct()
コマンドです。
var b = a.Distinct().ToArray();
配列の代わりにセットの使用を検討することをお勧めします。セットに重複を含めることはできないため、2番目の「a」を追加しても効果はありません。そうすれば、キャラクターのコレクションには常に重複が含まれず、後処理を行う必要がなくなります。
var list = new HashSet<string> { };
list.Add("a");
list.Add("a");
var countItems = list.Count(); //in this case countItems=1
最初に使用する配列はですIEnumerable<T>
。リストを個別の値に操作するために使用できるメソッドIEnumerable<T>
がありますDistinct()
var distinctList = list.Distinct();
最後にIEnumerable<T>
、ToArray()
メソッドがあります。
var b = distinctList.ToArray();
c#ディクショナリを使用する方が良い方法だと思います。LINQを使用して値で並べ替えることができます