队列,先进先出
Queue<string> q = new Queue<string>();
q.Enqueue("A");
q.Enqueue("B");
q.Enqueue("C");
Console.WriteLine(q.Dequeue()); //移除第一个并返回第一个元素的值:A
Console.WriteLine(q.Count); //返回总数量:2
Console.WriteLine(q.FirstOrDefault()); //返回第一个元素:B
Console.WriteLine(q.LastOrDefault()); //返回最后一个元素:C
堆栈,先进后出
Stack<string> st = new Stack<string>();
st.Push("A");
st.Push("B");
st.Push("C");
Console.WriteLine(st.Pop()); //移除最后一个元素并返回值:C
Console.WriteLine(st.Count); //返回元素个数:2