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

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
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
public String FormatDocumentNumber(String docNum)
    {
        int len = docNum.length();
        int lenDiff = len - Integer.toString(this.document_num).length();
        char[] arr = docNum.toCharArray();
        char[] number = Integer.toString(this.document_num).toCharArray();
        
        for(int i=0; i<len; i++)
        {
                arr[i] = '0';
        }

        for(int i=0; i<number.length; i++ )
        {
            arr[lenDiff+i] = number[i];
        }

        StringBuffer sb = new StringBuffer();
        for(int i=0; i<len; i++)
        {
            sb.append(arr[i]);
        }

        return sb.toString();
    }

Как сделать красивую функцию, которая формирует строку определенной длины с числом с ведущими нулями?

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

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

  • действительно, зачем нам нужен дурацкий format()
    Ответить
    • ну я еще не в теме всех тонкостей джавы, 3 дня назад для себя открыл ее 🙂
      Ответить
      • Лучше закрой обратно, пока мозг не покалечил.
        Если сильно нужен язык на основе JVM то Scala (http://scala-lang.org/) будет куда лучшим выбором. Есть еще Clojure, но уж лучше вместо него ту же Схему использовать.
        Ответить
        • поздно. после C# джава кажетса пиздецом 😀

          Мне нужно было написать кроссплатформенную гуевую программулину, выбор пал на джаву, т.к. C++ подобные языки я не люблю. Заодно и язык посмотреть шанс появился 😉
          Ответить
            • ннооо, а ты парсил в жаве xml? в шарпе это в 1 строчку делаетса, на джаве нужно 3 объекта разных типов создать чтобы это сделать. ебанулись они там 😀
              Ответить
              • ага, и тудой и обратно. в итоге плюнул и взял castor как б-м грамотный подход к jaxb
                Ответить
              • Это в стандартной поставке JDK. Сделано это только для легаси и переносимости на другие имплементации JRE. Теоретически никто тебе не мешает сделать это в одну строчку (в основном, для DOM, но есть фрэймворки и для SAX) или настроить парсинг до мелочей (быстрый SAX parsing).
                http://www.jdom.org/
                http://xerces.apache.org/xerces2-j/
                Ответить
          • >после C# джава кажетса пиздецом
            С каждым годом программеры становятся всё ленивее.
            Так скоро мышкой начнут программировать, а то и просто делать полную постановку задачи и получать код-решения. 🙂
            Ответить
          • то же прослеживается и в обратном направлении
            Ответить
    • Этот код можно заменить по сути на String.format("%08d", this.document_num); ?
      нет IDE под рукой чтобы проверить.
      Ответить

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

Переведи на "PHP", guest!

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


    8