日期:2014-05-17  浏览次数:20886 次

基础问题,大家帮俺看看呗
public class car : IComparable
   {      
      // Beginning of nested classes.

      // Nested class to do ascending sort on year property.
      private class sortYearAscendingHelper: IComparer
      {
         int IComparer.Compare(object a, object b)
         {
            car c1=(car)a;
            car c2=(car)b;

            if (c1.year > c2.year)
               return 1;

            if (c1.year < c2.year)
               return -1;

            else
               return 0;
         }
      }

问题:为什么有car c1=(car)a;
            car c2=(car)b;这两句在程序里有什么作用啊??如果不写可以吗??

------解决方案--------------------
因为是object类型的,不转换你调用不了.year。
------解决方案--------------------
拆箱,a和b都是object类型,然后将他们转换为car类型