使用するリストの使用
List<int> list = new List<int>();
list.AddRange(otherList);
キューを使用してこれを行う方法?、このコレクションにはAddRangeメソッドがありません。
Queue<int> q = new Queue<int>();
q.AddRange(otherList); //does not exists
Queue
には、ICollection
を受け取るコンストラクターがあります。リストをキューに渡して、同じ要素でリストを初期化できます。
var queue = new Queue<T>(list);
あなたのケースでは次のように使用します
Queue<int> ques = new Queue<int>(otherList);
otherList.Foreach(o => q.Enqueue(o));
この拡張メソッドを使用することもできます。
public static void AddRange<T>(this Queue<T> queue, IEnumerable<T> enu) {
foreach (T obj in enu)
queue.Enqueue(obj);
}
Queue<int> q = new Queue<int>();
q.AddRange(otherList); //Work!
キューリストを初期化できます。
Queue<int> q = new Queue<int>(otherList);