Лекция 6. Коллекции. (Программирование на Java, весна 2020)

Sdílet
Vložit
  • čas přidán 25. 03. 2020
  • Лекция № 6 курса "Программирование на Java". Новосибирск, весна 2020 год.
    Преподаватель -Тагир Фаридович Валеев
    Страница лекции на сайте CS центра: my.compscicenter.ru/courses/j...
    Все лекции курса по порядку: • Программирование на Ja...

Komentáře • 30

  • @TONHEAD7
    @TONHEAD7 Před 2 lety +1

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

  • @0day694
    @0day694 Před 3 lety +4

    Спасибо Тагир, особенно за паттерны по работе с коллекциями.

  • @georgyinishni5939
    @georgyinishni5939 Před 3 lety +3

    Очень крутая лекция. Спасибо!

  • @ihorbidni2528
    @ihorbidni2528 Před 3 lety +1

    Спасибо, интересно и профессионально!

  • @elenakhatmullina13
    @elenakhatmullina13 Před rokem +1

    Спасибо, очень доходчиво. Лектор -супер молодец!

  • @Das.Kleine.Krokodil
    @Das.Kleine.Krokodil Před 2 lety +14

    00:00 классификация коллекций
    Iterable
    00:02:21 while (hasNext()) next()
    00:04:10 for (iterable)
    00:05:40 удаление элементов
    00:06:12 свойства Iterable
    00:06:12 Iterable vs Iterator
    00:11:50 написание своего Iterable
    00:18:23 написание своего Iterable. Лямбда
    00:20:35 Collection
    00:31:13 Set
    00:38:52 List
    00:42:08 ListIterator extends Iterator
    00:50:32 Реализация rangeList, binarySearch
    00:59:48 hashCode()
    01:02:22 List. Стандартные списки
    01:08:34 Set. Стандартные множества
    01:11:00 HashSet
    01:12:49 TreeSet
    01:13:46 Queue
    01:15:05 Deque
    01:15:55 Стандартные очереди
    01:17:01 Устаревшие коллекции: Enumerator, Vector, Stack, Dictionary, Hashtable, LinkedList
    Map
    01:17:30 Методы
    01:22:40 Entry
    01:22:52 Обход
    01:25:20 Модификация
    01:27:57 Удаление
    01:31:06 Multi-map
    01:33:00 Multi-set/bag
    01:35:15 Ответы на вопросы

    • @ykkok399
      @ykkok399 Před rokem +1

      Дай Бог тебе здоровья, удачи и счастья!

  • @maksimdokuchaev8144
    @maksimdokuchaev8144 Před 3 lety +4

    спасибо за видео )) класс ))

  • @sovrinfo
    @sovrinfo Před 2 lety

    Спасибо за видео.Коммент в поддержку!

  • @romanp9033
    @romanp9033 Před 3 lety +9

    17:00 : кажется, что условие `rest--` только один раз будет true, поэтому один раз бросится NoSuchElementException, а следующий вызов next приведет к возвращению value.

  • @ConfidenceGold
    @ConfidenceGold Před měsícem

    спасибо)

  • @lelelelevv
    @lelelelevv Před rokem

    За 12 минут влюбился в этого человека.

  • @virus0936
    @virus0936 Před rokem

    01:12:13 ошибка в третьем утверждении, что: "а элементы сравнимы(Comparable)". Если элементы даже не сравнимы то будет использоваться Identity hashCode метод для разрешения коллизий и постройки RB-дерева

  • @illiadenysenko7776
    @illiadenysenko7776 Před 4 lety +1

    Я не совсем силен в версионировании Java. Но что значит preview режим?
    То есть в 14 джаве можно юзать records под какими-то флагами, но по дефолту они не доступны?

  • @gulfstream1800
    @gulfstream1800 Před rokem

    респект

  • @Das.Kleine.Krokodil
    @Das.Kleine.Krokodil Před 2 lety

    35:24 почему на строку new AbstractSet
    у меня ошибка Type mismatch: cannot convert from new AbstractSet(){} to Set

  • @romankopylov5013
    @romankopylov5013 Před 2 lety +1

    На 40 минуте идет речь о методе ремув и то, что можно его перепутать в случае интежера.
    Вопрос: есть ли в 21-22 году статический анализатор способный распознать намерения разработчика - хочет он удалить по индексу или всё-таки по значению?

    • @lelelelevv
      @lelelelevv Před rokem

      а реально, как это сделать? есть же ещё autoboxing, и если ты туда записал число, то без шансов определить

    • @lelelelevv
      @lelelelevv Před rokem

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

  • @zuzu-wz9be
    @zuzu-wz9be Před 3 lety

    я так понимаю, на 34:05 при нескольких sout не будет отображения сета, потому что next забивается до конца?

    • @zuzu-wz9be
      @zuzu-wz9be Před 3 lety

      вроде так и есть. Фиксится сбросом next = fromInclusive в блоке hasNext()

  • @Das.Kleine.Krokodil
    @Das.Kleine.Krokodil Před 2 lety

    17:43 почему же интерфейс не предполагает такой простой возможности?
    Или она не такая простая?

  • @alexpavlov9097
    @alexpavlov9097 Před 3 lety

    Есть какой-то аргумент, чтобы не использовать LinkedList? Если вдруг на собеседовании об этом будет вопрос.

    • @tgk322
      @tgk322 Před 3 lety

      Если нужно очень часто считывать данные из коллекции, то arraylist больше подойдет.

    • @olegrazin3429
      @olegrazin3429 Před 3 lety

      Поиск в LinkedList выполняется со сложностью O(n) то есть от начала или от конца списка пробегаются все элементы. Также вставка в середину списка со сложностью O(n). В ArrayList поиск элемента по индексу со сложностью O(1)

  • @user-ev2gi2no6l
    @user-ev2gi2no6l Před 2 lety

    Андрей Николаевич

  • @pawsdev
    @pawsdev Před 2 lety

    Надо создавать параллельно JAVA NEW, а это старое гавно остановить, пускай работает как работает. С каждым годом все хуже и хуже, если так то сяк, а вот так не сяк, но если так - то сяк, в итоге ХЗ

  • @user-ok1lq9be4q
    @user-ok1lq9be4q Před 3 lety +3

    Для кого лекция? Для мидлов? При всём уважении, ты столько лет проводишь "обучения", но совершенно непонятно, будто сам себе рассказываешь. Куски кода, которые подразумевают то, что слушатели поняли и запомнили предыдущие куски, которые прошли минут 15 назад с объяснительной "белебердой" (уж такие объяснения).

    • @AleksSPace
      @AleksSPace Před 2 lety +3

      Лекции отлично подходят тем кто перешёл на Java из другого языка или хочет систематизировать (обновить) свои знания. Никакой лишней "новичковой" болтовни, нужно что-то копнуть глубже - поставил на паузу.

    • @sargdahroth1712
      @sargdahroth1712 Před 2 lety +3

      для новичков подходит отлично, особенно, чтобы замазывать пробелы в теории. (под новичками я не имею ввиду совсем зеленых). Если не понимаете - то лучше пойти почитать теорию самостоятельно, а потом вернуться и закрепить.