Обновить
14
0
Алексей Фомин@Fomka

Пользователь

Отправить сообщение
Мне кажется, в программировании отсутствует понятие «необходимости» как таковое. Всегда есть какое-то альтернативное решение. Всегда есть «архитектура лучше/выше/быстрее», «код понятнее/короче/круче». Потому-то оно и искусством считается=)

Но я понимаю вашу подколку. Не так давно у меня с коллегой был спор на тему полезности подобных извращенных задач. Мне кажется, я его убедил. Сделать это в тексте тяжелее, но я попробую.

Эти задачки — это не паттерны, это синтетические примеры, в которых неочевидное поведение языка (например) приводит к неожиданным результатам. И если встретить подобный пример в живом проекте вряд ли удастся (и слава богу) — понимание этой неочевидности краевых случаев _необходимо_ (противоречу сам себе с необходимостью;)).

Разумеется, так нельзя писать, но понимать, как устроены дженерики (что не нужно полагаться на тип и удивляться пришедшим багам), как разруливаются конфликты имен — никогда не повредит.
Ну, на то он и Unsafe. Так не интересно;) Просто так не напишете. В любом случае, добавлю, спасибо
Да, все верно, хоть и использовать deprecated методы и не комильфо;)
Все-таки подход к управлению потоками кардинально поменялся и это как раз тот случай, когда deprecated == нельзя, имхо.

Я не писал этот способ, потому что задание, все-таки, было «дополнительным» к дженерикам. Грубо говоря, на «усвоенный материал». На мой взгляд весьма забавное (как и каст нулла)

В любом случае, добавлю в пост, спасибо.
Опережая вопрос — а заголовок был: «Java, ну зачем?»
;)
Поменял. Надеюсь, так лучше.
Действительно, намудрил со статическим. Поправил в посте, спасибо
Так именно в этом и вопрос — ради какой совместимости? Коллекции? Это-то и интересно…
Повторюсь, почему нельзя было сразу так сделать? Очевидное же решение. Подозреваю, что это связано со старыми коллекциями, но не владею точной информацией.
Почему не видел?=)

А я и не говорю, что с дженериками плохо. Мне просто совсем непонятно, почему нельзя было хранить ссылку на класс-параметр в объекте дженерика. В этом случае дженерики оставались бы дженериками и в рантайме.
При Сталине такого не было!

А по делу — спасибо за статью. Не сказал бы, что много нового, но акцентировать внимание на таких «мелочах», на мой взгляд, полезно.
Нет, я все правильно написал=)
Как раз про Ваш пример.

Еще раз. Для нечетного числа проверка нужна, если в условии будет нестрогое неравенство:
«некий элемент встречается как минимум N/2 раз»

Тогда, действительно, написанное Вами верно, и я лишь привел пример для N=5

Но на самом деле в условии строгое неравенство:
«Задача: в массиве длиной N найти элемент, который повторяется больше N/2 раз.»

И тут уже при выполнении условия выполнение второго прохода не требуется ни для каких N.

кстати, в вашем примере
112345
алгоритм выдаст 5 (опять же, условие задачи не выполнено)
Сказал, не подумав.
Здесь важно, что элемент встречается строго больше, чем N/2 раз
иначе все действительно ломается при нечетном N:
N=5
12134
результат — 4
Второй проход требуется, чтобы в ситуации, когда такого элемента в принципе нет (условие задачи «некий элемент встречается как минимум N/2 раз» не выполняется) — понять это, а не выдать неверный ответ
«аналогичная страничка про так же»
Уж выпендриваетесь (это к автору ресурса, не к Вам), так не делайте ошибок.
с одной стороны я с вами согласен.

с другой — я словами не могу описать, как меня бесит, когда люди начинают смешивать обобщение и конкретику.

Лично я никогда, подчеркиваю, никогда не стал бы говорить про «всех».
Я могу быть уверен и сказать за себя, да, черт возьми, я могу быть не уверен, но сказать, но обобщать — это уже демагогия.

Так вот я бы (уловил камень в свой огород, отвечаю) был бы искренне рад платить налог и т.п. если бы он шел на дело… да вообще, не отказался бы от больших налогов, если бы… Простите, еще чуть чуть и я начну уже спорить о нашем государстве, а не о способах выживания в нем.

А так — везде, где люди — везде поводок, не спорю (и не спорил, кстати).
по поводу первой части — ниже я писал, что идеал для меня — это места для выгула собак, чтобы могли порезвиться, и обязательно на поводке в остальных местах. Собственно, что тут спорить, все так хотят. Просто из-за отсутствия инфраструктуры большинство проблем (остальные — человеческий фактор)
Вот было бы здорово, если бы в нашей стране были предусмотрены нормальные места для выгула собак (не на от***сь, а хорошая инфраструктура)

мечты, мечты.

Я лично считаю, что держать собаку на привязи всегда — это одно, всегда без поводка — это второе, а «довести до места на поводке» и «отпустить порезвиться с себеподобными» — третье.

Уверен, большинство за третий вариант — но см. начало комментария… увы.
это хабр, многим наплевать на суть, а похоливарить все любят)) (я тоже, если что, люблю поспорить, но статья интересна, хоть и во многом мне непонятна;))
В подобных дискуссиях мне всегда хочется задать вопрос: а что будет, если собака на поводке? Если хозяин не сможет ее удержать? Он будет нести полую ответственность за содеянное? А если отпускает гулять без поводка — не будет что ли? конечно будет.
Если человек уверен в своем питомце — не кажется ли вам, что он будет менее бдительным?

Но это скорее насчет вашей позиции: «существует опасная собака среди потенциально безопасных», если я вас правильно понял.

Что касается проблемы — то я с вами соглашусь, но по другой причине.

Много людей боятся собак. Стереотипы, горький опыт, навеянное сми — не важно, это факт. Собака без поводка (а уж тем более без хозяина) вызывает страх у прохожих. И это, безусловно, не лучшее, на что можно тратить свои нервы. И дело даже не в том, что собака не тронет, а в том, что это доставит, кхм, дискомфорт окружающим.

ps сам собак не боюсь. лишь адекватно опасаюсь бездомных и излишне агрессивных.
Забавно. На моем стареньком ноутбуке если смотреть на монитор прямо, то телефон желтый, если немного снизу, то зеленый… Хамелеон. Какой же он на самом деле?=)

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность