Это зависит от того, где вы помещаете функцию onload (тег head или body или далее вниз), при этом внутренняя привязка событий заметно немного отличается в разных браузерах.
См. также window.onload vs document. OnLoad
Редко, в действительности, чтобы Вы хотели бы использовать массив. Определенно используйте List<T>
любое время, Вы хотите добавить/удалить, что данные, начиная с изменения размеров массивов являются дорогими. Если Вы знаете, что данные являются фиксированной длиной, и Вы хотите микрооптимизировать для [приблизительно 1 127] очень конкретных причина (после сравнительного тестирования), то массив может быть полезным.
List<T>
предложения партия [еще 1115] функциональность, чем массив (хотя LINQ выравнивает его немного), и почти всегда правильный выбор. За исключением params
аргументы, конечно.;-p
Как счетчик - List<T>
одномерен; тогда как Вы имеете, имеют прямоугольный (и т.д.) выстраивает как int[,]
или string[,,]
- но существуют другие способы смоделировать такие данные (если Вам нужно) в объектной модели.
См. также:
Однако я делаю партия из использования массивов в моем protobuf-сеть проект; полностью для производительности:
byte[]
в значительной степени важно для кодирования; byte[]
буфер, который я заполняю прежде, чем отправить вниз к базовому потоку (и v.v.); более быстрый, чем BufferedStream
и т.д.; Foo[]
, а не List<Foo>
), так как размер фиксируется когда-то созданный и должен быть очень быстрым. , Но это - определенно исключение; для общей обработки направления деятельности, List<T>
победы каждый раз.
Если Вы действительно не обеспокоены производительностью, и этим я имею в виду, "Почему Вы используете.Net вместо C++?" необходимо придерживаться List<>. Это легче поддержать и делает всю грязную работу изменения размеров массива негласно для Вас. (При необходимости, List<> довольно умно о выборе размеров массива, таким образом, он не должен обычно.)
Действительно просто ответ для добавления ссылки, которая я удивлен, еще не был упомянут: запись в блоге Lippert Eric на "Массивы, которые рассматривают несколько вредными".
можно судить из заголовка, что он предлагает использовать наборы везде, где практичный - но поскольку Marc справедливо указывает, существует много мест, где массив действительно является единственным практическим решением.
Если я знаю точно, в каком количестве элементов я собираюсь нуждаться, сказать, что мне нужны 5 элементов и [только 111] когда-либо 5 элементов тогда, я использую массив. Иначе я просто использую List< T>.
Это полностью зависит от контекстов, в которых необходима структура данных. Например, если Вы создаете объекты, которые будут использоваться другими функциями, или сервисы с помощью Списка лучший способ выполнить его.
Теперь, если у Вас есть список объектов и Вы просто хотите отобразить их, сказать относительно массива веб-страницы, контейнер, который необходимо использовать.
Несмотря на другие ответы, рекомендующие List<T>
, Вы захотите использовать массивы при обработке:
В большинстве случаев достаточно использовать Список
. Список List
использует внутренний массив для обработки своих данных и автоматически изменяет размер массива при добавлении большего количества элементов в список List
, чем его текущая емкость, что делает его более простым в использовании, чем массив , где вам нужно знать емкость заранее.
См. http://msdn.microsoft.com/en-us/library/ms379570 (v = vs.80) .aspx # datastructures20_1_topic5 для получения дополнительной информации информацию о списках в C # или просто декомпилируйте System.Collections.Generic.List
.
Если вам нужны многомерные данные (например, с использованием матрицы или в графическом программировании), вы, вероятно, воспользуетесь массивом
.
Как всегда, если память или производительность являются проблемой, измерьте Это! В противном случае вы можете сделать ложные предположения о коде.