在课堂上寻找最常见的财产

时间:2019-09-07 20:07:43

标签: c# class properties

我有一个带有构造函数的类,并为其设置了一些属性。我需要找到最常见的重复属性并进行计数。

class Car
{
    public string Make { get; set; }

    public Car(string make)
    {
        this.Make = make;
    }
}

我创建了一个包含7个成员的“汽车”列表,并设置了这些汽车的制造商:奥迪,沃尔沃,沃尔沃,宝马,奥迪,奥迪,奥迪(最常见的是奥迪)。

如何找到并输出最常见的“制作”并计数?

1 个答案:

答案 0 :(得分:1)

您可以使用此:

using System.Linq;
using System.Collections.Generic;

void TestCar()
{
  var list = new List<Car>();

  list.Add(new Car("Audi"));
  list.Add(new Car("Volvo"));
  list.Add(new Car("Audi"));
  list.Add(new Car("BMW"));
  list.Add(new Car("Audi"));

  var query = ( from car in list
                group car by car.Make into cars
                select new { Key = cars.Key, Count = cars.Count() } );

  var result = query.OrderByDescending(item => item.Count).FirstOrDefault();

  if (result != null) 
    MessageBox.Show(result.Key + " count = " + result.Count);
}