Си диез / Говнокод #2002 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
if (websites.Any() && websites.Count() > 1)
{
....
}

Без комментариев

Запостил: AndrewK AndrewK, (Updated )

Комментарии (7) RSS

  • Да лучше б уж откомментировал. Что-то непонятно, что тут неправильно.
    Ответить
  • Походу чел озаболился производительностью.
    Он хотел, чтоб Count() лишний раз не вызывался (этот метод имеет сложность O(N) от размера последовательности в общем случае)
    Но как то криво это сделал. Нуно что то типа такого websites.Skip(1).Any()
    Ответить
    • а Skip(1) разве не создаст новый объект?
      как-то это не комильфо (даже при условии, что оно данные скорее всего копировать не станет)
      Ответить
      • создаст. Но выделение памяти под объекта в .NET ОЧЕНЬ быстрая операция, фактически сводящаяся к инкременту указателя (а-ля стек). А вот Count() (если webSites - НЕ коллекция) приведет к проходу по всему списку webSites. А если их там 10000000 ??
        Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8