ASP.net 中Queue,Stack,Hashtable,Sortlist一些简单用法
2011-11-07 19:35
429 查看
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections;
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
Queue qu = new Queue();
qu.Enqueue("hello");
qu.Enqueue("word");
qu.Enqueue("!");
//foreach (string item in qu)
//{
// Response.Write(item);
//}
int m = qu.Count;
Response.Write("Queu先进先出:");
for (int i = 0; i < m; i++)
{
Response.Write(qu.Dequeue());
}
}
protected void Button2_Click(object sender, EventArgs e)
{
Stack st = new Stack();
st.Push(" hello");
st.Push(" World");
st.Push(" !");
// Response.Write(st.Peek());
// st.Pop();
Response.Write("Stack先进后出:");
//foreach (string item in st)
//{
// Response.Write(item);
//}
int mm = st.Count;
for (int i = 0; i < mm; i++)
{
Response.Write(st.Pop());
}
}
protected void Button3_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
Hashtable table = new Hashtable();
table.Add("z", p);
table.Add("li", li);
table.Add("wang", wang);
Response.Write("Hashtable通过三种遍历方法进输出的</br>");
foreach (DictionaryEntry item in table)
{
Person s = item.Value as Person;
Response.Write(s.FirstName + s.LastName + "</br>");
}
Response.Write("以上通过遍历Hashtable转换其类型后输出</br>");
foreach (Person s in table.Values)
{
Response.Write(s.FirstName + s.LastName + "</br>");
}
Response.Write("以上通过遍历Hashtable的Values转换其类型后输出</br>");
foreach (string s in table.Keys)
{
Person p5 = table[s] as Person;
Response.Write(p5.FirstName + p5.LastName + "</br>");
}
Response.Write("以上通过遍历Hashtable的Keys转换其类型后输出" + "</br>");
}
protected void Button4_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
Hashtable table = new Hashtable();
table.Add("z", p);
table.Add("li", li);
table.Add("wang", wang);
ArrayList list = new ArrayList(table.Values); //ArrayList list = new ArrayList(table.Values);
foreach (Person item in list)
{
Response.Write(item.FirstName + item.LastName);
}
Response.Write("</br>以上是没有排序过的</br>");
list.Sort();
foreach (Person item in list)
{
Response.Write(item.FirstName + item.LastName);
}
}
protected void Button5_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
SortedList sortlist = new SortedList();
sortlist.Add("z", li);
sortlist.Add("a", p);
sortlist.Add("b", wang);
Response.Write("李四,张三,王五</br>");
Response.Write("用sortlist之后自动按keys进行排序</br>");
foreach (Person item in sortlist.Values)
{
Response.Write(item.FirstName + item.LastName);
}
}
protected void Button6_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
SortedList sortlist = new SortedList();
sortlist.Add("z", li);
sortlist.Add("a", p);
sortlist.Add("b", wang);
int index = sortlist.IndexOfKey("z"); //得出z所有的索引
// Response.Write(index);
index = sortlist.IndexOfValue(li); //返回指定值所有的索引
//Response.Write(index);
Person p2 = (Person)sortlist.GetByIndex(index); //得到索引位置的值
Response.Write(p2.FirstName + p2.LastName);
}
}
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections;
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
Queue qu = new Queue();
qu.Enqueue("hello");
qu.Enqueue("word");
qu.Enqueue("!");
//foreach (string item in qu)
//{
// Response.Write(item);
//}
int m = qu.Count;
Response.Write("Queu先进先出:");
for (int i = 0; i < m; i++)
{
Response.Write(qu.Dequeue());
}
}
protected void Button2_Click(object sender, EventArgs e)
{
Stack st = new Stack();
st.Push(" hello");
st.Push(" World");
st.Push(" !");
// Response.Write(st.Peek());
// st.Pop();
Response.Write("Stack先进后出:");
//foreach (string item in st)
//{
// Response.Write(item);
//}
int mm = st.Count;
for (int i = 0; i < mm; i++)
{
Response.Write(st.Pop());
}
}
protected void Button3_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
Hashtable table = new Hashtable();
table.Add("z", p);
table.Add("li", li);
table.Add("wang", wang);
Response.Write("Hashtable通过三种遍历方法进输出的</br>");
foreach (DictionaryEntry item in table)
{
Person s = item.Value as Person;
Response.Write(s.FirstName + s.LastName + "</br>");
}
Response.Write("以上通过遍历Hashtable转换其类型后输出</br>");
foreach (Person s in table.Values)
{
Response.Write(s.FirstName + s.LastName + "</br>");
}
Response.Write("以上通过遍历Hashtable的Values转换其类型后输出</br>");
foreach (string s in table.Keys)
{
Person p5 = table[s] as Person;
Response.Write(p5.FirstName + p5.LastName + "</br>");
}
Response.Write("以上通过遍历Hashtable的Keys转换其类型后输出" + "</br>");
}
protected void Button4_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
Hashtable table = new Hashtable();
table.Add("z", p);
table.Add("li", li);
table.Add("wang", wang);
ArrayList list = new ArrayList(table.Values); //ArrayList list = new ArrayList(table.Values);
foreach (Person item in list)
{
Response.Write(item.FirstName + item.LastName);
}
Response.Write("</br>以上是没有排序过的</br>");
list.Sort();
foreach (Person item in list)
{
Response.Write(item.FirstName + item.LastName);
}
}
protected void Button5_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
SortedList sortlist = new SortedList();
sortlist.Add("z", li);
sortlist.Add("a", p);
sortlist.Add("b", wang);
Response.Write("李四,张三,王五</br>");
Response.Write("用sortlist之后自动按keys进行排序</br>");
foreach (Person item in sortlist.Values)
{
Response.Write(item.FirstName + item.LastName);
}
}
protected void Button6_Click(object sender, EventArgs e)
{
Person p = new Person("张", "三");
Person li = new Person("李", "四");
Person wang = new Person("王", "五");
SortedList sortlist = new SortedList();
sortlist.Add("z", li);
sortlist.Add("a", p);
sortlist.Add("b", wang);
int index = sortlist.IndexOfKey("z"); //得出z所有的索引
// Response.Write(index);
index = sortlist.IndexOfValue(li); //返回指定值所有的索引
//Response.Write(index);
Person p2 = (Person)sortlist.GetByIndex(index); //得到索引位置的值
Response.Write(p2.FirstName + p2.LastName);
}
}
相关文章推荐
- [ASP.NET]利用List的Sort()、Find()、FindAll()、Exist()來解決一些問題
- [ASP.NET]利用List的Sort()、Find()、FindAll()、Exist()來解決一些問題
- 学用 ASP.Net 之 System.Collections.Queue 与 Stack 类
- Map、Set、List、Queue、Stack的特点与用法2
- C# 集合类 Array,Arraylist,List,Hashtable,Dictionary,Stack,Queue学习资料
- php数据结构一些简单的用法(spldoubleylinkedlist)
- asp.net中System.DateTime.Now.ToString()的一些用法
- asp.net UpdatePanel的简单用法
- C# 集合类 :(Array、 Arraylist、List、Hashtable、Dictionary、Stack、Queue)
- C# 集合类 :(Array、 Arraylist、List、Hashtable、Dictionary、Stack、Queue)
- C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue
- [C#/ASP.NET]List<>中Sort()、Find()、FindAll()、Exist()的使用方法
- C#/ASP.NET List中Sort()、Find()、FindAll()、Exist()的使用方法
- asp.net中System.DateTime.Now.ToString()的一些用法
- C# 集合类 :(Array、 Arraylist、List、Hashtable、Dictionary、Stack、Queue)
- asp.net对XML文件的一些简单操作
- C#集合类(Array、Arraylist、List、Hashtable、Dictionary、Stack、Queue)
- C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue
- C# 集合整理 StringCollection,Array,ArrayList,IList,Item,Queue,Stack,Hashtable,SortedList
- asp.net中自定义验证控件的简单用法