Как перечислить список элементов на С#? Используя списки, я использую List<int> list = new List<int>(); list.AddRange(otherList); Как это сделать с помощью очереди?, эта коллекция не имеет метода AddRange. Queue<int> q = new Queue<int>(); q.AddRange(otherList); //does not exists Ответ 1 Queue имеет конструктор, который принимает ICollection. Вы можете передать свой список в очередь, чтобы инициализировать его теми же элементами: var queue = new Queue<T>(list); в вашем случае используйте следующим образом Queue<int> ques = new Queue<int>(otherList); Ответ 2 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! Ответ 3 Вы можете инициализировать список очередей: Queue<int> q = new Queue<int>(otherList);
Ответ 1 Queue имеет конструктор, который принимает ICollection. Вы можете передать свой список в очередь, чтобы инициализировать его теми же элементами: var queue = new Queue<T>(list); в вашем случае используйте следующим образом Queue<int> ques = new Queue<int>(otherList);
Ответ 2 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!