控件中国网现已改版,您看到的是老版本网站的镜像,系统正在为您跳转到新网站首页,请稍候.......
中国最专业的商业控件资讯网产品咨询电话:023-67870900 023-67871946
产品咨询EMAIL:SALES@COMPONENTCN.COM

学用 ASP.Net 之 System.Collections.Queue 与 Stack 类

作者:佚名 出处:互联网 2011年01月06日 阅读:

学用 ASP.Net 之 System.Collections.Queue 与 Stack 类

Queue(队列)是先进先出的集合; Stack(堆栈)是后进先出的集合.
--------------------------------------------------------------------------------
 
Queue 的主要成员:
--------------------------------------------------------------------------------
 
/* 属性 */
Count      //元素数

/* 方法 */
Clear()    //清空
Contains() //是否包含
Dequeue()  //出列
Enqueue()  //入列
Peek()     //获取将要出列的

--------------------------------------------------------------------------------

Stack 的主要成员:
--------------------------------------------------------------------------------
 
/* 属性 */
Count           //

/* 方法 */
Clear()         //
Contains()      //
Peek()          //获取将要出栈的
Pop()           //出栈
Push()          //压栈

--------------------------------------------------------------------------------

Queue 测试:
--------------------------------------------------------------------------------
 
protected void Button1_Click(object sender, EventArgs e)
{
    Queue queue = new Queue();
    queue.Enqueue("abc");
    queue.Enqueue(123);
    queue.Enqueue(true);

    string str = "";
    foreach (object obj in queue)
    {
        str += obj.ToString() + "; ";
    }
    TextBox1.Text = str; //abc; 123; True;
}

protected void Button2_Click(object sender, EventArgs e)
{
    Queue queue = new Queue();
    queue.Enqueue("AA");
    queue.Enqueue("BB");
    queue.Enqueue("CC");
    queue.Enqueue("DD");

    string s1 = queue.Dequeue().ToString(); //AA
    int n1 = queue.Count; //3

    string s2 = queue.Peek().ToString();    //BB
    int n2 = queue.Count; //3

    string s3 = queue.Dequeue().ToString(); //BB
    int n3 = queue.Count; //2

    queue.Clear();
    int n4 = queue.Count; //0

    TextBox1.Text = string.Concat(s1, "\n", n1, "\n", s2, "\n", n2, "\n", s3, "\n", n3, "\n", n4);
}

--------------------------------------------------------------------------------

Stack 测试:
--------------------------------------------------------------------------------
 
protected void Button1_Click(object sender, EventArgs e)
{
    Stack stack = new Stack();
    stack.Push("AA");
    stack.Push("BB");
    stack.Push("CC");

    string s1 = stack.Pop().ToString();  //CC

    stack.Push("DD");
    string s2 = stack.Pop().ToString();  //DD

    string s3 = stack.Peek().ToString(); //BB
    string s4 = stack.Pop().ToString();  //BB

    int n = stack.Count;                 //1
    bool b = stack.Contains("AA");       //True

    TextBox1.Text = string.Concat(s1, "\n", s2, "\n", s3, "\n", s4, "\n", n, "\n", b);
}
 

热推产品

  • ActiveReport... 强大的.NET报表设计、浏览、打印、转换控件,可以同时用于WindowsForms谀坔攀戀Forms平台下......
  • AnyChart AnyChart使你可以创建出绚丽的交互式的Flash和HTML5的图表和仪表控件。可以用于仪表盘的创......
首页 | 新闻中心 | 产品中心 | 技术文档 | 友情连接 | 关于磐岩 | 技术支持中心 | 联系我们 | 帮助中心 Copyright-2006 ComponentCN.com all rights reserved.重庆磐岩科技有限公司(控件中国网) 版权所有 电话:023 - 67870900 传真:023 - 67870270 产品咨询:sales@componentcn.com 渝ICP备12000264号 法律顾问:元炳律师事务所 重庆市江北区塔坪36号维丰创意绿苑A座28-5 邮编:400020
在线客服
在线客服系统
在线客服
在线客服系统