我是在net.2.0中.不要用linq.如何才能获得它的最后一个元素?

解决方案 »

  1.   

                Dictionary<string, string> dic = new Dictionary<string, string>();
                dic.Add("1", "one");
                dic.Add("2", "two");            Console.WriteLine(dic[dic.Keys.Last<string>()]);
      

  2.   

    dic.Keys.Last
    用KEY取VALUE
    就OK了
      

  3.   

    dic.Keys.Last
    或者没记错的话 这类集合通过length-1 访问最后一个也可以啊~~……
      

  4.   

    上面回的Last都是linq的方法.
    对于Dictorynary而言没有最后不最后一个元素的概念.
    我想你选错用的集合类了.
      

  5.   


    同上,Dictionary并不是顺序表。
      

  6.   

    Dictionary[Dictionary.Keys[Dictionary.Keys.Count-1]]
      

  7.   

    这个不行呀.是不是存在Dictionary里的数据都没有按顺序呀?最后写入的有可能在前面出现吗?
      

  8.   

    伪问题,Dictionary是无序的,因此无所谓第一个或最后一个。
      

  9.   

    不知楼主找到没有,如有就共享一下。
     
    今天做一个统计报表,也是在.net2.0中,需要取出最后一个元素,找了下资料,没有找到已封闭好的方法,
    最后不得已采用for这个类似想法,代码如下:Dictionary<string, string> dic = new Dictionary<string, string>();
      dic.Add("1", "one");
      dic.Add("2", "two");int iIndex=0;  //标识第i个元素,i为常量
    foreach (string item in dic.Keys)
    {
        iIndex++;
        ...
        if (iIndex == dic.Keys.Count)
        {
            .... //做你想做的事
         }
    }