请尽量具体一点
比如  hashtable ht=new hashtable();ht.add("i","1");
ht.add("j","2");ht.add("k","3";)
如何进行随机的输出啊

解决方案 »

  1.   

    Random r=new Random ();int i=r.next(1,ht.Count);string htValue=ht[i].ToString();
      

  2.   

    ..我的key是string 类的...你这样是不行的吧
      

  3.   

    楼主你是不是可以把健跟值换过来,再用一楼的方法,或者干脆不用hashtable,用arraylist.
      

  4.   

      Random r = new Random();
                int i = r.Next(1, objHash.Keys.Count);
                int k = 0;            foreach (string skey in objHash.Keys)
                {
                    if (i == k) return  objHash[skey];
                    else k++;
                }
      

  5.   

     static void RndHashTable()
            {
                Hashtable ht = new Hashtable();
                ht.Add("a", "1");
                ht.Add("b", "2");
                ht.Add("i", "3");
                ArrayList listValues = new ArrayList(ht.Values);
                ArrayList listKeys = new ArrayList(ht.Keys);
                foreach (var s in listKeys)
                {
                    listValues.Add(s);
                }            Random rndValue = new Random();
                int i = 0;
                int j;
                while (i <listValues.Count)
                {
                    j=rndValue.Next(0,listValues.Count);
                    Console.WriteLine(listValues[j]);
                    i++;
                }
            }