Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

예제가 있는 C# Stack.TrimExcess() 메서드

<시간/>

C#의 Stack.TrimExcess() 메서드는 해당 수가 임계값보다 작은 경우 List의 실제 요소 수로 용량을 설정하는 데 사용됩니다.

구문

public void TrimExcess ();

예시

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      Stack<int> stack = new Stack<int>();
      stack.Push(100);
      stack.Push(150);
      stack.Push(175);
      stack.Push(200);
      stack.Push(225);
      stack.Push(250);
      stack.Push(300);
      stack.Push(400);
      stack.Push(450);
      stack.Push(500);
      Console.WriteLine("Elements in the Stack:");
      foreach(var val in stack) {
         Console.WriteLine(val);
      }
      Console.WriteLine("Count of elements in the Stack = "+stack.Count);
      Console.WriteLine("Does Stack has the element 400?= "+stack.Contains(400));
      stack.Clear();
      stack.TrimExcess();
      Console.WriteLine("Count of elements in the Stack (updated) = "+stack.Count);
   }
}

출력

Elements in the Stack:
500
450
400
300
250
225
200
175
150
100
Count of elements in the Stack = 10
Does Stack has the element 400?= True
Count of elements in the Stack (updated) = 0

예시

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      Stack<string> stack = new Stack<string>();
      stack.Push("A");
      stack.Push("B");
      stack.Push("C");
      stack.Push("D");
      stack.Push("E");
      stack.Push("F");
      stack.Push("G");
      stack.Push("H");
      Console.WriteLine("Count of elements = "+stack.Count);
      Console.WriteLine("Elements in Stack...");
      foreach (string res in stack) {
         Console.WriteLine(res);
      }
      Console.Write("Count of elements (updated) = "+stack.Count);
      stack.Clear();
      stack.TrimExcess();
      Console.WriteLine("Count of elements in the Stack (updated) = "+stack.Count);
   }
}

출력

Count of elements = 8
Elements in Stack...
H
G
F
E
D
C
B
A
Count of elements (updated) = 8Count of elements in the Stack (updated) = 0