Best Class to Hold Fixed Amount of Data in C#
<p>Lets assume I have plenty of strings that need processing, I like to place the last processed string in memory to avoid repeated processing against it. I only need to record the last 100 strings, which means if I use</p>

<p><code>List&lt;string&gt; oldString</code> after <code>oldString.Add()</code>, I have to use <code>oldString.TakeFromEnd(100)</code> As you know, <code>TakeFromEnd()</code> not exist, which means if I go this path, I have to write lots of things to keep a 100 length <code>List</code> which would lead to bad performance I can imagine.</p>

<p>I'd like to ask, is there any pre-made in system Class that just holds a fixed amount of data, and throws away oldest data when a new one is added. Thanks</p>

<p><strong>[EDIT]</strong></p>

<p><code>Queue&lt;string&gt;</code> is very good indeed, use <code>.Any()</code> to check if already exist, use <code>.Enqueue()</code> to add <em>(not Equeue as answered below, it shot a N)</em>, use <code>.Count</code> to check length, and <code>.Dequeue()</code> to remove the first added one.</p>
