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

    +66

    1. 1
    2. 2
    3. 3
    if (xobj.getStringProp() == "N") {
        //do it
    }

    Ну а что тут скажешь?

    Запостил: lotik, 10 Июня 2010

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

    • показать все, что скрытода просто код сишника, которому вдруг дали сделать что-то быстро на яве. Топ но1 опшибка, между прочим
      Ответить
      • Такой код пишется уже 9 лет. Так что оправдание слабое.
        Ответить
        • такой код пишется уже сколько существуют компы изучающими яву или подобное
          Ответить
      • где ты здесь С увидел? чистый ex-SQL.

        я в фирме где половина бывшие оракакаловцы, так они булом принципиально не пользуются. у них везде char, 'Y' и 'N'.
        Ответить
        • ртфм: строки в яве не сравниваются ==, для этого есть equals
          Ответить
          • ... млин. проехали.
            Ответить
          • Кстати, на коротких строчках вроде этой работает и ==, так что вполне вероятно, что это было специально. Для тех, кто не знает/не догадался, это такие хитрые оптимизации.

            Если, скажем, обе строки были заданы литералами, то у них будут одинаковые объекты. Т.е.:

            "a" == "b"
            но
            new String("a bit longer string") != new String("a bit longer string")
            и не
            "a bit longer string" != new String("a bit longer string")
            Ответить
      • ээ
        а в си строки сравниваются?:)
        Ответить
        • да. strcmp() называется ;)
          Ответить
          • Спасибо, Кэп!
            А причем тут сравнение указателей (==) ?

            Если бы в коде было == 'N' -- то слова Lure имели бы смысл.
            А какое отношение == "N" имеет к С -- мне не ясно
            Ответить
            • Ну, фразу "код сишника" можно понять и как "код сиплюсплюсшника".
              А там уже есть стринги и перегруженные операторы сравнения.
              Ответить
              • Мне кажется, что сравнение строк через "==" скорее говорит о богатом PHPшнои бекграунде автора
                Ответить

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