Jawa / Говнокод #1174 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
private int convertToInt(String substring) {
        int result = 0;
        for (int i = 0; i < substring.length(); i++) {
            switch(substring.charAt(i)){
                case '1':   result = result*10 + 1; break;
                case '2':   result = result*10 + 2; break;
                case '3':   result = result*10 + 3; break;  
                case '4':   result = result*10 + 4; break;  
                case '5':   result = result*10 + 5; break;
                case '6':   result = result*10 + 6; break;
                case '7':   result = result*10 + 7; break;
                case '8':   result = result*10 + 8; break;
                case '9':   result = result*10 + 9; break;
                case '0':   result = result*10 + 0; break;
            }
        }
        return result;
    }

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

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

  • bl:
    Мдяяяя, мало того что бред, так еще и заточен только под десятичную сис-му исчисления.
    Ответить
  • Представляю, как будет выглядеть обратная операция.
    Ответить
  • Решается в одну строку:)

    Чел не осилил класс Integer
    Ответить
  • GrayCardinal:
    Хоть яву и не знаю, но всё равно LOL
    Ответить
  • 1 курс любого вуза лаба по основам алгоритмизации - перевести строку в число. без использования встроенных средств языка. типа вы такого не писали.
    Ответить
  • Xaionaro:
    #5: зачем "switch()", говоря Сишным языком, почему не сделать?: result = result*10 + (c - '0');
    Ответить
  • Xaionaro:
    А вообще, если уж 1ый курс, "говоря Сишным языком", можно задать массив с предопределёнными значениями для каждого символа и делать result=result*10 + M[(unsigned char)str[i]];

    И я привык видеть, что алгоритмизации обычно учатся не на "Java" :)...
    Ответить
  • Как образчик параноидального кода вполне имеет право на жизнь - традиционные алгоритмы уповают на то, что цифровые символы идут по порядку начиная с '0' и такое допущение параноиков может напрягать 🙂

    Разве что стоит оптимизировать:

    private static final String DIGITS = "0123456789";
    private int convertToInt(String s)
    {
    int result = 0;
    for (int i = 0; i < s.length(); i++)
    {
    result = result * DIGITS.length() + DIGITS.indexOf(s.charAt(i));
    }
    return result;
    }
    Ответить
  • а с чего вы взяли что там только числа в сторке этой?
    Ответить
  • похоже, что говнокод взят отсюда:
    http://lurkmore.ru/Вайп / Многопоточная вайпалка на джаве
    особенно умиляет постскриптум автора:
    P.S. Быдлошкольники и неумеющие кодить могут сразу проходить мимо...
    Ответить

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

Из-за тебя ушел bormand, guest!

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


    8