A List<string> представляет собой конкретную реализацию IEnumerable<string>. Разница в том, что IEnumerable<string> является просто последовательностью string, но List<string> индексируется индексом int, может быть добавлен и удален из и вставлен в определенный индекс.
В принципе, интерфейс IEnumerable<string> позволяет передавать поток string в последовательности, но List<string> позволяет вам делать это, а также изменять и получать доступ к элементам в списках определенными способами. IEnumerable<string> - это общая последовательность string, которая может быть итерирована, но не допускает случайного доступа. A List<string> - это специальная коллекция переменных размеров с произвольным доступом.
Ответ 2
различны.
IEnumerable позволяет выполнять итерацию с помощью цикла for для каждого цикла.
И IEnumerable просто имеет метод GetEnumerator.
И в списке реализовано много интерфейсов, таких как IEnumerable, Ilist и т.д. Так много функций в List.
В производительности IEnumerable быстрее, чем List.
Ответ 3
IEnumerable<T> - это интерфейс. Он должен быть реализован.
Кроме того, List - это массив, который растет, когда вы добавляете в него элементы, в то время как IEnumerable позволяет разработчикам использовать их в foreach.
Ответ 5
Первый представляет собой конкретный List строк, другой - любой класс, реализующий IEnumerable<string>