1. Java / Говнокод #2845

    +82.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    for (int i = 0; i < list.size(); i++) {
            SpecialItem item = list.get(i);
            if (item != null) {
              item = null;
            }
    }
    list.clear();

    Неиндийский способ очистить java.util.List от вместимого.

    Запостил: xrobak, 23 Марта 2010

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

    • Фигня какая-то. Это ж не будет работать.
      Ответить
      • Еще как будет! Там же в конце есть list.clear() :-)
        Ответить
    • бессмысленно и беспощадно
      Ответить
    • Это наверно просто сигнал garbage collector-у чтобы уже начинал трудиться =) возможно и не говнокод
      Ответить
    • Полез в реализацию(ArrayList) посмотреть. Здесь происходит дублирование кода.
      Так делать не нужно.
      public void clear() {
      modCount++;

      // Let gc do its work
      for (int i = 0; i < size; i++)
      elementData[i] = null;

      size = 0;
      }
      Ответить
      • Кривая дубликация. Т.к. нулят не элемент в списке, а переменную ссылающуюся на элемент в списке. Т.е. ничего не делают, по сути. Прогнали цикл зря.
        Ответить

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