この質問にはたくさんのスレッドがあることは知っていますが、どれも私が望んでいた方法で私を助けてくれませんでした.
だからここに私の問題があります:私はこの配列を持っています:
int [] array = {1, 1, 1, 2, 2, 4}
その配列のモードを表示したいのですが、それを行うと、3 つの 1 と 1 つの 2 が表示され、1 と 1 の 2 である必要があります。2 つの数字 (1 と 2) を aListBox
と数字の 4に保存したい別のListBox
。
このコードを見つけましたが、完全には理解できませんでした。辞書の使い方がわからず、使い方がわからないので使えません。
int[] numsArr = { 1, 1, 1, 2, 2, 3, 4, 5, 6 };
Dictionary<int, int> dic = new Dictionary<int, int>();
for (int i = 0; i < numsArr.Length; i++)
if (dic.ContainsKey(numsArr[i]))
dic[numsArr[i]] = ++dic[numsArr[i]];
else
dic.Add(numsArr[i], 1);
StringBuilder sb = new StringBuilder();
foreach (KeyValuePair<int, int> kvp in dic)
sb.AppendLine(String.Format("Number {0} has {1} repetitions.", kvp.Key, kvp.Value));
Console.WriteLine(sb.ToString());
Console.ReadLine();