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

    +83.1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    static {
    
    		ruleNum10 = new HashMap();
    		ruleNum10.put("0", "0");
    		ruleNum10.put("1", "1");
    		ruleNum10.put("2", "2");
    		ruleNum10.put("3", "3");
    		ruleNum10.put("4", "4");
    		ruleNum10.put("5", "5");
    		ruleNum10.put("6", "6");
    		ruleNum10.put("7", "7");
    		ruleNum10.put("8", "8");
    		ruleNum10.put("9", "9");
    
    		ruleNum16 = new HashMap();
    		ruleNum16.put("0", "0");
    		ruleNum16.put("1", "1");
    		ruleNum16.put("2", "2");
    		ruleNum16.put("3", "3");
    		ruleNum16.put("4", "4");
    		ruleNum16.put("5", "5");
    		ruleNum16.put("6", "6");
    		ruleNum16.put("7", "7");
    		ruleNum16.put("8", "8");
    		ruleNum16.put("9", "9");
    		ruleNum16.put("10", "10");
    		ruleNum16.put("11", "11");
    		ruleNum16.put("12", "12");
    		ruleNum16.put("13", "13");
    		ruleNum16.put("14", "14");
    		ruleNum16.put("15", "15");
    
    	}

    Очередной пример китайского героизма во владении копипейстом. Они похоже не знают о существовании цикла for и метода String.valueOf. А что если бы там было 200 елементов хотя бы?

    Запостил: cheap_chinese, 12 Августа 2009

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

    • Не понятен вообще смысл такой хеш-таблицы...
      Ответить
      • Мне тоже, но нам китайского разума не понять.
        Ответить
        • Ха ха ха щас набегут герои оптемизаторы и вам расскажут про то как много инструкций они сэкоономят не используя String.valueOf.
          очень странный код мой моск отказывается понять где такое используется
          может говнопостер наложит на еще кода там где заюзаны эти мапы?
          просто любопытно
          Ответить
          • Или String.intern();

            Но надо сказать, что HashSet, который внутри фактически использует HashMap не позволяет делать такой полезной операции как получение объекта по ключу.

            Есть только contains(key), позволяющий узнать, есть ли в коллекции объект, для которого equals с key даёт true, а вот заполучить этот объект кроме как полным перебором не получится.

            Так что иногда приходится подобные мапы самого с собой заводить. Но не столь инфернальные, конечно.
            Ответить
            • мне кажется им просто нужен список для листбокса или как оно в яве называется не помню.
              Хотя всеж интересно поглядеть где реально оно используется.
              Ответить
              • По-моему, мы их недооцениваем - им наверняка эти мапы нужны для такой несусветной фигни, что даже не догадаешься. cheap_chineese, приоткрой уже завесу над тайной - ты наверняка разобрался :)
                Ответить
                • Если они до мап додумались это может быть сосем плохо обычно их мысля копи-пастом кончается.
                  Ответить
      • Вероятно какой-нить reusable класс сторонней библиотеки требует в качестве параметра хеш-таблицу (как, например, различные модели листов умеют работать с массивами/листами/коллекциями).
        Ну и чукча, в процессе разбирательства с библиотекой, дабы не отвлекаться на не вполне освоенные циклы и преобразования чисел в строки, не заморачиваясь с циклами решил сделать проще и доступнее...
        Я поступаю аналогично если надо срочно подправить код на каком-нить php или перле, а времени разобраться с языком нету.
        Ответить
    • Самое страшное, что можно получить от такого кода - это попытка сделать нечто вроде (пишу в стиле Java 1.5, но легко получить вариант и для 1.4)
      for (String str : ruleNum16.keySet())
      {
      ... // Обрабатываем, ожидая сохранения порядка чисел
      }
      Ответить
    • Фейк! Такое даже орангутанг не наговнокодит...
      Ответить

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