Pull to refresh
3
0
Send message
Такое удаление по накладности будет максимум аналогично созданию. Все упомянутые проблемы решаемы и не являются техническими, скорее организационными.
Это, извините, bullshit. Да, удаление может быть проблемой. А вот замена на содержимое /dev/zero функционально идентична и не создает проблемы фрагментации.
Э… Там как раз от 1 до 100. Если выпадает 00 и 0 это считается как 100.
А grow тут не вызовется. Если использовать конструктор с указанием размера, то память занимается сразу (при дефолтном конструкторе — при добавлении первого объекта). Расти ему незачем — места хватает. И даже arraycopy будет вызван только на реально занятом диапазоне (то есть на нулевом).
Это довольно опасный подход, и его не зря не допускает стандартный механизм. Если очень надо — можно сделать свою реализацию путем банального копипаста и вырезания проверки на комодификацию.
Дело в том, что для полного абзаца обычно хватает одного бутылочного горлышка. А если их достаточно много, а код имеет большое число зависимости осложненное многопоточностью, то всё становится очень печально, потому что часто бывает непросто определить даже сам источник проблем. И просто консультацией тут не обойтись, обычно нужна полноценная ревизия кода.
Надо отметить, что get(i) в ArrayList будет работать даже быстрее итератора, там из накладных расходов всего одна проверка на выход за границы массива. А вот в LinkedList всё плохо, каждый раз надо идти по цепочке.
Название надо было немного понятнее сделать: «Не называйте себя програмистом, если вы просто хотите побольше заработать».
У итератора LinkedList вообще-то есть add, remove и set. Другой вопрос что нет потокобезопасности, но это совсем другой вопрос.
Неудивительно, потому что по умолчанию там и есть вставка в конец.
Это не всегда грязные хаки. Хайлоад требует хорошего понимания внутренних механизмов. Например чтобы неправильная коллекция или невинный replace в строковой переменной, под которым оказывается спрятан жуткий регэксповый механизм, не создали катастрофического бутылочного горлышка. Я имел опыт работы с творением таких двухнедельных праграмистав в реальных условиях. Написать в принципе работающий код и код, без проблем работающий в продакшене — две большие разницы.
ArrayList имеет внутри собственно array, который имеет ограниченный размер. Если не влезает — приходится пересоздавать массив и копировать содержимое. А добавление в начало или конец LinkedList делается за фиксированне время. Подозреваю, отсюда и разница. Если создавать ArrayList с запасом он будет побыстрее, потому что не нужна обёртка.
tl;dr:

LinkedList представляет собой неиндексированную цепочку, которая быстро работает при операциях с концами цепочки. Оптимальное использование — очередь, на что намекает имплементация интерфейса Deque.

ArrayList представляет собой массив в обёртке, поэтому лучше при необходимости произвольного доступа.
В реальном мире изучение основ нового языка занимает пару недель, и через 6-12 месяцев уже никто не догадается, что вы не занимались этим всю свою карьеру.

Это и верно, и нет. После двухнедельного изучения процесс кодинга будет представлять собой танец на граблях, которых полно в любом языке. После 12 месяцев можно будет уверенно кодить стандартные механизмы, но когда доходит до задач, требующих хорошего знания слабодокументированных или попросту недокументированных особенностей, всё становится куда сложнее.
А напряжение такое же было?
Вы ведь таки ушли от ответа на вопрос:

Чтобы требовать такого уровня владения свободой для принятия решения нужно иметь веское основание. Таким основанием обычно может быть только риск. А чем рискуем-то? Просьба приводить только примеры риска большего, чем имеющийся в допустимых действиях.

Без этого ответа говорить об уровне требуемого знания нельзя. Алсо, у нас тут замкнутый круг: давать эту самую информацию тоже нельзя…

Насчет рабства — я бы с вами поспорил. В условиях, например, материально-технической культуры средневековой Европы использование рабов экономически оправдано куда больше, чем свободных йоменов — история это отлично показывает, свободные проигрывают конкурентную гонку крепостным.
Смотря для кого. Для государства — возможно. И только в краткосрочной перспективе при условии консерватизма в культуре и науке. Но давать моральную оценку из другой материально-технической культуры не совсем корректно.
Один принципиальный момент. Чтобы требовать такого уровня владения свободой для принятия решения нужно иметь веское основание. Таким основанием обычно может быть только риск. А чем рискуем-то? Просьба приводить только примеры риска большего, чем имеющийся в допустимых действиях.

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

Вы как раз ОТНИМАЕТЕ чужую свободу. В первую очередь свободу самих детей.

Я задал конкретные вопросы, но, как обычно, получил в ответ кучу голых эмоций.
Вообще-то вопрос был немного другим, но ладно.

Вот именно, что физические повреждения. Этот вопрос всегда обсуждается примерно так:
— Где вред?
— Если отыметь ребенка конём, то ребенок умрет!
— А если коня ребенком?
— Это аморально!
То есть вопрос физического вреда не является неотъемлемой частью и может быть опущен.

Остается вред моральный. А моральный вред вообще штука невнятная… И зависит в первую очередь от морали. Грубо говоря, чтобы получить боль от разрыва в шаблоне, нужен шаблон. И тут получается порочный круг — детям тщательно создают этот самый шаблон, а потом оберегают их от оного шаблона разрыва до определенного возраста.

Природа как раз никакой границы не проводила. Совсем. Есть куча исследований о том, что секс имеет не только репродуктивную, но и социальную функцию. И во второй ипостаси никаких возрастных ограничений природа не предусматривала.
Да там в переносных значениях всё, что не между супругами и в миссионерской позе. Это повод это всё запрещать? И как я уже сказал — это христианство, ну максимум авраамические религии.

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

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

А еще цивилизация не кончается за пределами христианства, а за этими пределами вообще всё интересно.

А аргумент «вы бы хотели» тут и вовсе некорректен. Поскольку ребенок является недееспособным, решения за него имеет право принимать опекун. Основанием для запрета принятия такого решения является вредность этого решения в каком-либо смысле. И вот тут самое интересное — принципиальная физическая вредность (хоть сколько-то превосходящая вредность от средней травмоопасности видов спорта, которые для детей вполне поощряются) в данном случае не доказана и не имеет даже вменяемых оснований для предположения, психическая вредность выше скорее от текущей практики (увы, с вменяемыми исследованиями тут по понятным причинам плохо). Только чистое давление на эмоции и инстинкты родителя и собственника.

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity