protected void btnHashTable(object sender, EventArgs e)
    {
        Hashtable htStudent = new Hashtable();
        htStudent.Add("matao",25);
        htStudent.Add("liujun",21);
        htStudent.Add("lihai",23);
        htStudent.Add("wangju",22);
        htStudent.Add("zhouxinxin",26);
        TextBox2.Text = htStudent[TextBox1.Text].ToString();
    }在TextBox1中输入以上5个人名中的任何一个,单击按钮,TextBox2中就将对应的人的年龄显示出来,例如输入matao,显示25.但是如果输入的名字不输入以上5个人的任何一个,程序就会报错了。
如何修改,让其实现如下的功能:1.输入的人名不属于以上任何一个时,TextBox2.Text显示“无此员工!”
2.再增加一个Label1控件,在TextBox1中输入以上5个人名中的任何一个,单击按钮,TextBox2中就将对应的人的年龄显示出来,然后在Label1中显示年龄最大的人的姓名及年龄,和年龄最小的人的姓名及年龄。要求必须使用Hashtable实现......

解决方案 »

  1.   

    if(htStudent[TextBox1.Text] == null)
      TextBox2.Text = “无此员工!";
    else
      TextBox2.Text = htStudent[TextBox1.Text].ToString();
      

  2.   

    foreach (DictionaryEntry de in htStudent)
                {
                    if (de.Key == "")
                    {
                        TextBox2.Text = de.Value;
                    }
                }
      

  3.   

    foreach (DictionaryEntry de in htStudent)
      {
      if (de.Key == TextBox1.Text.Trim())
      {
      TextBox2.Text = de.Value;
      }
      }
      

  4.   

               Hashtable htStudent = new Hashtable();
                htStudent.Add("matao", 25);
                htStudent.Add("liujun", 21);
                htStudent.Add("lihai", 23);
                htStudent.Add("wangju", 22);
                htStudent.Add("zhouxinxin", 26);            String minName = "";  //年龄最小人的姓名
                String maxName = "";  //年龄最大人的姓名
                Int32 min = 100000;   
                Int32 max = 0;            foreach (DictionaryEntry d in htStudent)
                {
                    if (Convert.ToInt32(d.Value) > max)
                    {
                        max = Convert.ToInt32(d.Value);
                        maxName = d.Key.ToString();
                    }                if (Convert.ToInt32(d.Value) < min)
                    {
                        min = Convert.ToInt32(d.Value);
                        minName = d.Key.ToString();
                    }
                }
    Label1.Text = maxName + " " + max + " " + minName + " " + min;
      

  5.   

    ht.Contains("aaa");可以判断是否包含某个键
      

  6.   

    htStudent.ContainsKey("matao");
    //判断是否有某个键值这个也可以。
      

  7.   

    To Peter200694013:还想请问下,如果有两个人年纪都是26的话,都是最大的,那么会显示哪个的呢?
    能不能两个一起显示?
      

  8.   

    首先判断键是否存在HashTable 有一个方法是判断键是否存在的。