Урок по Java 51: Сортировка коллекций и интерфейсы - Comparable и Comparator

  Рет қаралды 48,094

Уроки Java

Уроки Java

Күн бұрын

Cкидки до 22-го января на все курсы всего за 9.99:
Каждый купон расчитан на 10 покупок, спешите!
Новый курс по Photoshop:
www.udemy.com/...
HIBERNATE:
www.udemy.com/...
JPA:
www.udemy.com/...
HTML + CSS:
www.udemy.com/...
MAVEN:
www.udemy.com/...
GIT:
www.udemy.com/...
KOTLIN
www.udemy.com/...
SQL:
www.udemy.com/...
IDEA
www.udemy.com/...
Паттерны Java:
www.udemy.com/...
Java EE:
www.udemy.com/...
Английский язык:
www.udemy.com/...
JAVA:
www.udemy.com/...
Apache Spark:
www.udemy.com/...

Пікірлер: 54
@global_silence2623
@global_silence2623 6 жыл бұрын
Спасибо)) Добавлю кое-что. Если не ошибаюсь, начиная с Java 8, мы можем сделать так Set set = new TreeSet(Comparator.comparingInt(Person::getAge)) или если для имени Set set = new TreeSet(Comparator.comparing(Person::getName)) Это без написания дополнительных классов и имплементации Comparable - работает сразу. И еще можно выводить коллекции так set.forEach(System.out::print), чтобы не писать дополнительно цикл. Про это вроде у вас даже в более поздних уроках где-то рассказано)
@user-iu5sj4us7e
@user-iu5sj4us7e 3 жыл бұрын
Спасибо...хороший комент. в тему.
@BogdanovArtemiy
@BogdanovArtemiy 3 жыл бұрын
Это можно понять, если параллельно с видео писать и по источникам разным рыскать и читать их. Это целая настоящая работа от которой кипит мозг мой. Так просто это не понять, в принципе как и все программирование. Спасибо за урок, таких мало на русском ятубе).
@annam3533
@annam3533 Жыл бұрын
Бомба, долго не доходила логика сортировки, теперь прояснилось.
@sinicynvalua
@sinicynvalua 5 жыл бұрын
А-д-д.. :D
@Satyricons1982
@Satyricons1982 3 жыл бұрын
Отличный урок! Удалось на практике применить!
@user-hp2yi9yy3x
@user-hp2yi9yy3x 3 жыл бұрын
Спасибо за доступное объяснение темы
@09GorecGorecGorecGorecGorecGor
@09GorecGorecGorecGorecGorecGor 2 жыл бұрын
Спасибо за уроки , не слушай никого.
@jackblack1836
@jackblack1836 2 жыл бұрын
Отличное видео, спасибо! Коротко и ясно!)
@MrTheMercer
@MrTheMercer 2 жыл бұрын
Спасибо, все очень понятно)
@Mirovoy_zagovor
@Mirovoy_zagovor 5 ай бұрын
Бро, ты бы выделил зону, где печатается код при трансляции экрана. А так получается: весь экран пустой. А размер шрифта = 0,001мм
@seregayasinskiy780
@seregayasinskiy780 7 жыл бұрын
Привет. Так все понятно , но вот появились некоторые вопросы: - что вызывает метод compare и куда уходит return - где скрыт цикл в котором происходит сортировка - где храниться отсортированный список перед самым выводом
@husivm
@husivm 7 жыл бұрын
Хорошия вопрос. Посмотритем мой урок по Коллекциям - kzbin.info/www/bejne/ZqS6oZ2Lq8d6mbM Я там на сколько помню рассказываю о том что коллекции бывают 3-х видов: 1. не упорядоченные, 2. упорядоченные, 3. отсоврированные, причем если коллекция отсортированная то она и урорядоченная. К примеру, HashSet - не упорядоченная LinkedHashSet- упорядоченная, TreeSet - отсортированна. Так вот TreeSet основанна на TreeMap коллекции которая в свою очередь отсортированаая коллекция методом красно-черного дерева(если не ошибаюсь, а я не ошибаюсь :) ). Вот сосбвенно внури TreeMap'a и происходит сортировка, там и есть ответы на все Ваши вопросы.
@Flawden
@Flawden 2 жыл бұрын
Set - это коллекция, которая хранит уникальные элементы. Например если забить в сет числа 1,2,2,3,4, то туда попадут только 1,2,3,4 (Лишня двойка исчезнет). Как это достигается? Set внутри сравнивает значения по HashCode и по Equals и если обе проверки возвращают True, то элементы признаются одинаковыми и попадают в коллекцию. Но как сравнивать объекты, созданные программистом? Вот хотим мы, чтобы в Set хранились уникальные люди, но.. А что такое уникальность? Вот это мы и описывает через CompareTo. Мы говорим коллекции - дорогая коллекция, чтобы не допустить повторений ты должна сравнивать вот таким способом (О объясняем). Сортировки тут не происходит. Только замена элементов при совпадении. То есть если мы решили, что у Person есть уникальный int passportCode, то если сравнение this.passportCode == passportCode выдаст True, то мы выкинем старого Person из коллекции и поставим туда нового. (Сравнивать разумеется мы можем по многим показателям, а не только по одному). return вызывает коллекция (Будь то Map или Set) и ответ уходит в ее функцию сравнения.
@Flawden
@Flawden 2 жыл бұрын
Забыл добавить. В видео все таки происходит сортировка, ибо там используется TreeSet - это тоже хранилище уникальных значений, но они еще и сортируются. Comparable позволяет объяснить JVM как правильно их сортировать. (Ранее писал что не происходит сортировка, теперь пишу что происходит. Поясню. В реализации TreeSet происходит, а например в HashSet - не происходит).
@Alexander-is1eq
@Alexander-is1eq 3 жыл бұрын
Спасибо большое !
@user-lx8xn9yj2c
@user-lx8xn9yj2c 6 жыл бұрын
А так огромное спасибо. В отличие от дурацких сайтов, здесь все понятно и доступно
@user-vn1ij6fv8e
@user-vn1ij6fv8e 4 жыл бұрын
Всё просто и понятно, спасибо!
@DmitriyTernov
@DmitriyTernov 7 жыл бұрын
Вот еще вопросы: - Сортировка происходит при добавлении элемента? (Насколько помню, как-то так) - Что будет с позицией объекта. При изменении параметра участвующего в сортировке? Отслеживает ли коллекция изменения в объектах, и производит ли пересортировку?
@azamattilektessov7432
@azamattilektessov7432 Жыл бұрын
Стринги))
@user-tg5md6hp5m
@user-tg5md6hp5m 4 жыл бұрын
Каким сочетанием клавиш Вы смотрите описание интерфейсов и методов?
@wrestlingmotion4194
@wrestlingmotion4194 4 жыл бұрын
Ctrl зажимай и щелкай по названию класса! :)
@user-tg5md6hp5m
@user-tg5md6hp5m 4 жыл бұрын
@@wrestlingmotion4194 спасибо
@andriiburenko1898
@andriiburenko1898 7 жыл бұрын
Скажите пожалуйста, а как просматривать документацию по классах, как это делаете Вы? У меня при выполении комбинации Ctrl+Q открывается только реализация метода или класса без подробного описания, как у Вас.
@filidorZeliony
@filidorZeliony 6 жыл бұрын
Ctrl зажимай и щелкай по названию класса! :)
@olegprodan6648
@olegprodan6648 6 жыл бұрын
ясно, доступно! С меня подписон... спс ))
@EM_Falcor
@EM_Falcor 2 жыл бұрын
Объяснений мало (
@sergeychernov2387
@sergeychernov2387 5 жыл бұрын
20 минут мучений и непонимания, почему он не переопределяет toString () потому что я написал toString (), а не toString() Наличие пробелов решает =( а как вызывается шаблон кода?
@MrMaxSeven
@MrMaxSeven 5 жыл бұрын
если вы про переопределение методов (override), то ctrl+o
@andreysorin3096
@andreysorin3096 3 жыл бұрын
интЫ, стрнгИ и адедЕ - это пиздец :)
@Alexander-is1eq
@Alexander-is1eq 3 жыл бұрын
А мне наоборот южнорусский говор автора ласкает слух. Он придает изюминку, и позволяет отличить канал от множества похожих. Каждый раз когда слышу что-то типа «Ну шо я вам могу рассказать за этот интерфейс» сразу понимаю куда попал и что меня ждет годный контент. ))
@user-cs7yl8ol9l
@user-cs7yl8ol9l 4 жыл бұрын
дженерики? Да не, буду делать явное приведение типов))
@husivm
@husivm 4 жыл бұрын
ты про последовательность слышал? мы дженеригки только в 56 уроке проходим, как я их могу использовтаь в 51? ты еще скажи почему скпринг в первом уроке не был описан
@user-fi9ej6pm4r
@user-fi9ej6pm4r 5 жыл бұрын
такое ощущение что сам не понимает )
@user-vn1ij6fv8e
@user-vn1ij6fv8e 4 жыл бұрын
Не понимаю зачем ты этот видос смотрел если такой тупорез :D
@user-fi9ej6pm4r
@user-fi9ej6pm4r 4 жыл бұрын
@@user-vn1ij6fv8e ооо школьники из доты вышли !?
@avocadoman6038
@avocadoman6038 4 жыл бұрын
Ну так а что ты хотел? Хочешь качества - плати.
@user-vn1ij6fv8e
@user-vn1ij6fv8e 4 жыл бұрын
@@avocadoman6038 не понял, у него как бы реклама в видео, она ему итак приносит доход
@andreysorin3096
@andreysorin3096 3 жыл бұрын
Ты к нему не справедлив! Он потихоньку, к концу ролика разобрался :)
@user-lx8xn9yj2c
@user-lx8xn9yj2c 6 жыл бұрын
Ахахахаа. У меня такое случилось)) Красным все подчеркивало, думаю, в чем проблема. Минут 15 просидел, потом увидел,"compareTo" с большой буквы написано))))
@cannibalirk3055
@cannibalirk3055 4 жыл бұрын
ты в блокноте набираешь что ли??
@gideonwait9813
@gideonwait9813 5 жыл бұрын
Эсли я хочу не инт а дабл отсортировать , что делать ?
@user-my9sg8we9h
@user-my9sg8we9h 4 жыл бұрын
дабл, если чё, тоже примитив, поэтому то же самое, что и с интом Collection.sort(твоя коллекция);
@denisdock7983
@denisdock7983 5 жыл бұрын
Очень плохо, рекомендую переснять.
@beliy969
@beliy969 4 жыл бұрын
Произношение английского конечно дикое Return читается ритё(р)н
@husivm
@husivm 4 жыл бұрын
согласен
@user-sr9kt4tp8n
@user-sr9kt4tp8n Жыл бұрын
Это конечно всё 6 лет назад вышло, но чел, готовь сценарий роликов заранее, импровизация на лету это пздц
@user-gk3ep5mq9r
@user-gk3ep5mq9r 3 жыл бұрын
Сырые типы в коллекциях, я в шоке 🤬
@olegpetrov3513
@olegpetrov3513 4 жыл бұрын
Автор сам не понимает что делает)
@hellsirius1
@hellsirius1 3 жыл бұрын
Всё классно, но повышеное ЧСВ в голосе раздражает!
@cs16uzb
@cs16uzb 4 жыл бұрын
bomedi vawee
@byket_foamiran_vitebsk
@byket_foamiran_vitebsk 4 жыл бұрын
Да ну нахер. Эээ - оо о-- ааа ... тут и так тема для восприятия не легкая, так еще твои слова склеивать... готовиться надо
@MsDima9999
@MsDima9999 5 жыл бұрын
хахахах сам то хоть понял что сделал?)))))
@andreysorin3096
@andreysorin3096 3 жыл бұрын
Пиздец - клоун :)
Comparable и Comparator в Java
20:55
Тимофей Коваленко
Рет қаралды 12 М.
Урок по Java 50: Коллекции
36:33
Уроки Java
Рет қаралды 72 М.
Oh No! My Doll Fell In The Dirt🤧💩
00:17
ToolTastic
Рет қаралды 13 МЛН
The FASTEST way to PASS SNACKS! #shorts #mingweirocks
00:36
mingweirocks
Рет қаралды 13 МЛН
The CUTEST flower girl on YouTube (2019-2024)
00:10
Hungry FAM
Рет қаралды 41 МЛН
9 Compare и Comparator в Java
16:16
javabegin
Рет қаралды 6 М.
Выпуск 22. hashCode() и equals() - самое главное.
21:16
Изучаем Java
Рет қаралды 28 М.
Дженерики в Java. Проще чем кажется.
21:36
Игорь Мешалкин
Рет қаралды 16 М.
Generics In Java - Full Simple Tutorial
17:34
Coding with John
Рет қаралды 1 МЛН
Урок по Java 28: Обертки
24:54
Уроки Java
Рет қаралды 23 М.
Программисты-самоучки... Слушайте внимательно.
22:45
Евгений Афанасьев
Рет қаралды 56 М.
Не бойтесь регулярных выражений. Regex за 20 минут!
34:20
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 233 М.
Урок по Java 49: Equals and HashCode
38:35
Уроки Java
Рет қаралды 33 М.
Oh No! My Doll Fell In The Dirt🤧💩
00:17
ToolTastic
Рет қаралды 13 МЛН