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

    −13

    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
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    public void onItemSelected(WheelPicker picker, Object data, int position) {
            if (picker.getId() == R.id.main_wheel_left) {
                switch (data.toString()) {
                    case "Январь":
                        mMonth = 0;
                        break;
                    case "Февраль":
                        mMonth = 1;
                        break;
                    case "Март":
                        mMonth = 2;
                        break;
                    case "Апрель":
                        mMonth = 3;
                        break;
                    case "Май":
                        mMonth = 4;
                        break;
                    case "Июнь":
                        mMonth = 5;
                        break;
                    case "Июль":
                        mMonth = 6;
                        break;
                    case "Август":
                        mMonth = 7;
                        break;
                    case "Сентябрь":
                        mMonth = 8;
                        break;
                    case "Октябрь":
                        mMonth = 9;
                        break;
                    case "Ноябрь":
                        mMonth = 10;
                        break;
                    case "Декабрь":
                        mMonth = 11;
                        break;
                }
                setMonth(mMonth);
            }
            getCurrentDay(); // зачем????????
        }

    Человека вообще не напрягло что приходит position которые по факту то и есть что он ищет.

    Запостил: bitizen, 13 Февраля 2017

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

    • Хоть я и еле знаю базисы программирования, но даже я вижу что это гребанный ++С, а не Ява
      Ответить
      • > public void
        Ответить
      • По каким приметам определили?
        Ответить
        • По определению класса, очевидно же
          Ответить
          • Кто сказал, что это полный код?

            При добавлении обвязки компилируется в Java:
            http://ideone.com/FAEduE

            Встречное задание Вам: написать обвязку для того же фрагмента, чтобы он компилировался в C++.
            Ответить
            • Честно заявляю, не знаю что такое обвязка, а свои комментарии писал чтобы развязать срач, потому что в срачах обычно объясняют что и как, дабы доказать что я не прав, такие уж времена, учусь как могу :D
              Ответить
              • Так быстро сдаётесь? А я надеялся, что увижу, как этот код компилируется в других языках, например в C++.

                Неплохая задачка для изучения основ программирования и вообще для тренировки.
                Ответить
                • Сдаюсь? Нет нет, я бы не сдался, коль понял бы что вы мне предлагаете сделать :D
                  Ответить
                • #define public - вот и вся обвязка
                  Ответить
            • Добавил обвязку, проверь
              http://ideone.com/kDVFtY
              Ответить
      • Не скомпилируется, даже так:
        #include <stdio.h>
        #include <string.h>
        #include <stdint.h>
        
        int main(void) {
        	char *a = "lohpidor";
        	char *b = "pidor";
        	char *a2 = a + strlen("loh");  
        	switch ((uintptr_t)a2) {
        		case ((uintptr_t)"lohpidor") : printf ("lohpidor"); break;
        		case ((uintptr_t)"pidor") : printf ("pidor"); break;
        	}
        	return 0;
        }

        https://ideone.com/I2E3eg
        Ответить
        • Значит, в сишке и в крестах, как и в Паскале, свитч-кейс можно делать только по константам (известным на момент компиляции), причём перечислимого типа (целое, символ, enum, boolean)? И судя по всему такое жёсткое ограничение нужно, чтобы компилятор мог свести свитч-кейс к таблице переходов.
          Ответить
          • А что выгоднее использовать, switch...case или if...else if?
            Ответить
            • switch
              Ответить
              • Потому что в if можно всякого нахреначить в условие, а switch только на квк или есть нечто сокральнофундаментальное?
                Ответить
                • Слушай, ты как-то статью писал про шарп, так я просто охуел от такого опыта. Респект! Может, ещё напишешь?
                  Ответить
                  • я? Статью? Ссылку можно?
                    Ответить
                    • Здесь, на ГК. Ссылку дать не могу, не помню номер страницы.
                      Статья состояла из комментов. В них ты очень подробно и развернуто описывал особенности c#, фактически, чистый ман.
                      Ответить
                      • чет вроде было
                        я больше про J писал
                        о чем тебе статью?
                        Ответить
                • Компилятор оптимизирует создавая специальную хеш-таблицу с относительно маленьким хранилищем (в том же Кормене доказывается, что для рид-онли хеш таблиц нужно что-то типа лог-Н дополнительного места). И свич трансформируется в переход на метку выбраную из таблицы.
                  Ответить
                  • я типа того и имел ввиду. спс за пояснение
                    Ответить
    • Верховный жрец по какой-то причине грохнул все мои коды.
      Впечатление двоякое; с одной стороны я, конечно, благодарен, за подаренную мне возможность начать жизнь tabula rasa. Помимо годных на мой взгляд кодов, был удален спам, компроментировавший мою учетку. Тем не менее, я хотел бы вернуть учетку Stertor (забыл от нее пароль). Обещаю не флудить, не спамить и не регать мультиакки.
      Ответить

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