简体   繁体   English

如何比较两个列表是否相等

[英]how to compare 2 lists for equality

even if value in dow and dy are equal,it doesnt enter inside the loop to check equality 即使dow和dy中的值相等,也不会进入循环内部以检查是否相等

foreach (DayOfWeek dow in daysofweek)
{
    foreach (day dy in cleave.WeekDays)
    {
        if (Mode == 1)
        {
            //textBoxnumofdays.Text = Convert.ToString(span.Days+2);
            if (dow.Equals(dy))
            {
                textBoxnumofdays.Text = Convert.ToString(span.Days - 1);
            }
            else
            {
                textBoxnumofdays.Text = Convert.ToString(span.Days + 2);
            }
        }
        else
        {
            //textBoxnumofdays.Text = Convert.ToString(span.Days + 1);
            if (dow.Equals(dy))
            {
                textBoxnumofdays.Text = Convert.ToString(span.Days - 1);
            }
            else
            {
                textBoxnumofdays.Text = Convert.ToString(span.TotalDays + 1);
            }
        }
    }
}

public void Getdays()
{
    DateTime dtFrom = new DateTime(dateTimePickerfromdate.Value.Year,
        dateTimePickerfromdate.Value.Month, dateTimePickerfromdate.Value.Day);
    DateTime dtTo = new DateTime(dateTimePickertodate.Value.Year,
        dateTimePickertodate.Value.Month, dateTimePickertodate.Value.Day);
    daysofweek = new List<DayOfWeek>();           
    cleave = new LeaveApplication(constr);         
    while (dtTo != dtFrom)
    {
        dtFrom = dtFrom.AddDays(1);
        daysofweek.Add(dtFrom.DayOfWeek); 
    }
}

I presume you are trying to check if its a weekday or not 我想您正在尝试检查是否是工作日

foreach (DayOfWeek dow in daysofweek)
{
}

So just compare it with like dow == DayOfWeek.Sunday and accept or ignore based on your requirement. 因此,只需将其与dow == DayOfWeek.Sunday进行比较,然后根据您的要求接受或忽略即可。

Because for each daysofweek it will do a full cycle of cleave.WeekDays , so it will probably activate first the if part and in the next cycle the else part. 由于每个daysofweek它会做的一个完整周期cleave.WeekDays ,所以它可能会首先启动的if部分,并在下一周期的else部分。 What are you trying to do? 你想做什么?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM