2017-10-05 95 views
2

我有以下的情况更高:检查对象是在一个列表中比在另一个

List<Driver> sortedDrivers = new List<Driver>(); 
    List<Driver> lastLapDrivers = new List<Driver>(); 

每个驱动器具有以下属性:

public string Name { get; set; } 
    public int Pace { get; set; } 

    public int Id { get; set; } 

    public List<double> lapTime { get; set; } 

    public double totalTime { get; set; } 

    public int Position { get; set; } 

    public Team Team { get; set; } 

两个列表之间的区别在于,一个列表中的对象排序不同。如果排序列表中的每个对象在列表中高于lastLapDrivers列表中的每个对象,我希望看到它。

回答

2

可以使用IndexOf(T item);方法来获得一个项目的索引列表中的

例如:

int myDriversIndex = sortedDrivers.IndexOf(myDriver); 

然后你就可以把它与它在lastLapDrivers指数,以确定哪个是第一位的。

+0

谢谢,不知道这个方法存在,我的坏.. –

0

也许使用lambda总和

var TotallastLapDrivers=lastLapDrivers.Sum(x=>x.lapTime); 
var TotalsortedDrivers=sortedDrivers.Sum(x=>x.lapTime); 

if(TotallastLapDrivers>TotalsortedDriverslastLapDrivers) 
{ 
//do something 
} 

希望帮助!

相关问题