請在這種情況下,靜態函數,你會用它在任何地方,而無需創建對象
if(myclass.PenultimateCondition(mylist))
{
//do something
}
public class myclass
{
public static bool PenultimateCondition(List<Datetime> list)
{
return list[list.Count - 1] == list.[list.Count - 2];
}
}
OR
化妝日期時間擴展方法。在這種情況下,你不必甚至可以編寫的類名
public class ExtensionMethod
{
public static bool PenultimateCondition(this IEnumerable<DateTime> value)
{
Datetime[] dt = value.ToArray();
return dt[dt.Length-2] == dt[dt.Length-1];
}
}
,並使用它像
if(myList.PenultimateCondition())
{
//do something
}
OR
使通用的擴展方法。在這種情況下,你可以使用它的任何數據類型
public class ExtensionMethod
{
public static bool PenultimateCondition<T>(this IEnumerable<T> value)
{
T[] dt = value.ToArray();
return Equals(dt[dt.Length-2], dt[dt.Length-1]);
}
}
,並使用它像
if(myList.PenultimateCondition())
{
//do something
}
沒關係。只需檢查Count是否至少有2 – 2012-04-26 09:41:43
Thaknks的答覆,只是想知道是否有一個更直接的方式。在我的真實代碼中,if是4倍的長度。我仍然希望我的代碼可讀。 – PeterP 2012-04-26 09:45:55