C# 堆栈 - Count 属性
C# 堆栈的 Count() 属性用于计算堆栈中可用元素的数量。
如果您认为 count 是堆栈的容量,那您就错了。count 并非堆栈的容量。count 是堆栈中实际存在的元素数量,而 capacity 是堆栈可以存储的元素数量。
capacity 始终大于或等于 count。如果在添加元素时计数超过容量,容量将自动增加。
语法
以下是 C# 堆栈 Count() 属性的语法 -
public virtual int Count {get;}
参数
此属性不接受任何参数。
返回值
此属性返回堆栈包含的元素数量。
示例 1:计算堆栈中的元素数量
以下是 Count 属性的基本示例,演示如何使用它来获取元素数量 -
using System;
using System.Collections;
public class Example {
public static void Main(string[] args) {
Stack myStack = new Stack();
// 将元素插入到 Stack 中
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
myStack.Push(4);
// 打印堆栈元素
Console.Write("My Stack: ");
foreach (var item in myStack) {
Console.Write(item + " ");
}
//统计元素数量
int count = myStack.Count;
Console.Write("Number of elements: "+ count);
}
}
输出
以下是输出 -
My Stack: 4 3 2 1 Number of elements: 4
示例 2:计算堆栈中的字符数
让我们看另一个使用 Count 属性的示例,以显示此堆栈包含的字符数 -
using System;
using System.Collections.Generic;
public class Example {
public static void Main(string[] args) {
Stack<char> myStack = new Stack<char>();
// 将元素插入到 Stack 中
myStack.Push('a');
myStack.Push('b');
myStack.Push('c');
myStack.Push('d');
// 打印堆栈元素
Console.Write("My Stack: ");
foreach (var item in myStack) {
Console.Write(item + " ");
}
// 计算元素数量
int count = myStack.Count;
Console.Write("Number of characters: " + count);
}
}
输出
以下是输出 -
My Stack: d c b a Number of characters: 4
示例 3:移除前后计数
在此示例中,我们将显示堆栈中元素移除前后的计数 -
using System;
using System.Collections;
public class Example {
public static void Main(string[] args) {
Stack myStack = new Stack();
// 将元素插入到 Stack 中
myStack.Push('a');
myStack.Push('b');
myStack.Push('c');
myStack.Push('d');
// 计算元素数量
int count = myStack.Count;
Console.Write("Count Before Poping: " + count);
// 从顶部删除一个元素
myStack.Pop();
// 弹出后计数
Console.Write("Count After Poping: " + myStack.Count);
}
}
输出
以下是输出 -
Count Before Poping: 4 Count After Poping: 3

csharp_stack.html