VB.NET Queue(队列)和Stack(堆栈)
VB.NET Queue:
队列Queue实现的是先进先出列表。即最先添加到列表中的元素最先被删除。
Queue位于System.Collections命名空间下
Queue类中的主要属性和方法:
1、Count属性 — 用于获取保存在队列中的元素个数,若其值为0则表明队列为空
2、Clear方法 — 用于移除队列中的所有元素
3、Contains方法 — 用于判断队列中是否存在某一元素,存在返回True,不存在返回False
4、Dequeue方法 — 用于返回队列顶部元素,并从队列中删除该元素
5、Enqueue方法 — 用于向队列底部添加新元素
6、Peek方法 — 用于返回队列顶部元素,但不从队列中删除该元素
VB.NET Stack:
堆栈实现的是先进后出的列表。即最后被添加到列表中的元素最先被删除。
Stack位于System.Collections命名空间下
Stack类中的主要属性和方法:
1、Count属性 — 用于获取保存在堆栈中的元素个数,若其值为0则表明堆栈为空
2、Clear方法 — 用于移除堆栈中的所有元素
3、Contains方法 — 用于判断堆栈中是否存在某一元素,存在返回True,不存在返回False
4、Pop方法 — 用于返回堆栈最近添加的元素,并从堆栈中删除该元素
5、Push方法 — 用于向堆栈的栈顶添加新元素
6、Peek方法 — 用于返回堆栈栈顶元素,但不从堆栈中删除该元素
Queue和Stack综合举例:
Imports System.Collections.Queue Imports System.Collections.Stack Module Module1 Sub Main() Dim a As String = "I want to go to visit my new friend tomorrow !" Dim b() As String b = a.Split(" ") Dim i As Integer Console.WriteLine("数组b中的元素为:") For i = 0 To b.Length - 1 If i = 0 Then Console.Write(b(i)) Else Console.Write(Space(3) & b(i)) End If Next Console.WriteLine() Dim q As New Queue Dim s As New Stack '将数组中的元素添加到队列q中 For i = 0 To b.Length - 1 q.Enqueue(b(i)) Next '将数组中的元素添加到堆栈s中 For i = 0 To b.Length - 1 s.Push(b(i)) Next Console.WriteLine("被删除的队列q的顶部元素是:" & q.Dequeue) Console.WriteLine("被删除的堆栈s的栈顶元素是:" & s.Pop) q.Clear() s.Clear() Console.WriteLine("队列q中的元素个数为:" & q.Count) Console.WriteLine("堆栈s中的元素个数为:" & s.Count) Console.ReadLine() End Sub End Module