Публикации по теме 'enumerable'


Что я думаю о перечислимом Ruby
Вызовите юристов; это контракт. Я хотел бы продемонстрировать на высоком уровне, как Enumerable модуль Ruby требует #each метода от классов, которые его включают. Я слышал, как Армандо Фокс, профессор EECS из Калифорнийского университета в Беркли, описал Enumerable как «контракт» между классом, который включает его, и самим модулем. То есть Enumerable выполняет следующие действия с классами, которые его включают: «Если вы предоставите мне способ итерации или перечисления..

Лямбды и перечисления в Ruby
Недавно я влюбился в простой шаблон функции высшего порядка в JavaScript. Это выглядит примерно так: Учитывая массив, // .js const oneToTen = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] это: oneToTen.map(number => number * 3) //=>[ 3, 6, 9, 12, 15, 18, 21, 24, 27, 30 ] то же самое, что и это: const timesThree = number => number * 3 oneToTen.map(timesThree) //=>[ 3, 6, 9, 12, 15, 18, 21, 24, 27, 30 ] Этот пример корпоративного уровня не является сверхсложным, но вы можете..

Как визуализация помогла мне с отношениями «многие через» в Ruby
Мои первые три недели в качестве студента-программиста в школе Flatiron подходят к концу. Я хотел бы кратко оглянуться на свой опыт изучения языка Ruby во время моего пребывания здесь, рассказать о некоторых проблемах, с которыми я столкнулся, и о том, как я визуализировал эти проблемы, чтобы ознакомиться с ними. Ключевой концепцией объектно-ориентированного программирования являются отношения между объектами. Как новичок, одной из самых запутанных вещей, которые мне приходилось изучать,..

Перечислимый модуль в Ruby
Богатый источник методов, предоставляемых Ruby, которые доступны для использования классами. Предпосылка Эту тему будет легче понять, если вы обладаете следующими знаниями: Block, Proc и Lambda в Ruby Что это такое, чем они отличаются и как их использовать. juzer-shakir.medium.com Модули в Ruby Тот, который не может быть создан как класс! Оглавление ↦ Определение ↦ Вызов..

Класс перечислителя в Ruby
Богатый источник методов, предоставляемых Ruby, доступных для использования объектами перечислителя. Предпосылка Эту тему будет легче понять, если вы обладаете следующими знаниями: Перечислимый модуль в Ruby Богатый источник методов, предоставляемых Ruby, доступных для использования классами. juzer-shakir.medium.com Оглавление ↦ Определение ↪ Внутренняя итерация ↪ Внешняя итерация ↦ Экземпляр класса Enumerator ↦..

Вопросы по теме 'enumerable'

Как лучше всего изменить список в цикле foreach?
Новой функцией C # / .NET 4.0 является то, что вы можете изменить свой enumerable в foreach , не получая исключения. См. Запись в блоге Пола Джексона Интересный побочный эффект параллелизма: удаление элементов из коллекции при перечислении для...
134623 просмотров
schedule 25.10.2022

Как найти минимум / максимум с Ruby
Я хочу использовать min(5,10) или Math.max(4,7) . Есть ли в Ruby функции для этого?
278262 просмотров
schedule 01.12.2022

Можно ли получить доступ к индексу в хэше в каждом цикле?
Я, вероятно, упускаю что-то очевидное, но есть ли способ получить доступ к индексу/счетчику итераций внутри хеша в каждом цикле? hash = {'three' => 'one', 'four' => 'two', 'one' => 'three'} hash.each { |key, value| # any way to know...
68500 просмотров
schedule 16.09.2022

Понимание Ruby Enumerable#map (с более сложными блоками)
Допустим, у меня есть функция def odd_or_even n if n%2 == 0 return :even else return :odd end end И у меня был простой перечисляемый массив simple = [1,2,3,4,5] И я прогнал его через карту с помощью моей функции,...
4009 просмотров
schedule 01.11.2023

Перечислитель: метод сбора с двумя параметрами
У меня есть этот код: users = ["foo", "bar"] users.collect { |item, value = []| value << {:name => item} }.flatten Это работает как ветер в ruby-1.9.2: => [{:name=>"foo"}, {:name=>"bar"}] Но это не работает в...
690 просмотров
schedule 13.07.2023

Возврат значения блока по перечислению, если оно не равно нулю
Кажется, у меня есть немного странный вариант использования Ruby Enumerable. Я пытаюсь сделать что-то вроде следующего: result = my_strategies.some_method do |strategy| strategy.get_result end Метод some_method — это просто...
329 просмотров
schedule 06.02.2023

Требования для включения Enumerable
Я пытался разработать свою структуру данных Array только для чтения, и мне очень нравится идея предоставления параметров обхода с помощью класса Enumerable, но я не могу найти требования к нему. В некоторых примерах, которые я смотрел, реализация C...
420 просмотров
schedule 14.10.2022

Что такое перечисляемый аргумент в Object.create?
В каком использовании Object.create вы хотите установить enumerable в true ?
2108 просмотров

Какой самый быстрый способ в Ruby получить первый перечисляемый элемент, для которого блок возвращает значение true?
Какой самый быстрый способ в Ruby получить первый перечисляемый элемент, для которого блок возвращает значение true? Например: arr = [12, 88, 107, 500] arr.select {|num| num > 100 }.first # => 107 Я хотел бы сделать это, не...
16684 просмотров
schedule 14.09.2023

Почему метод Enumerable.OrderBy‹TSource, TKey› работает быстрее, если не использует Comparer
Я написал код для тестирования скорости методов сортировки. Он создает коллекцию и сортирует ее, используя различные методы. public void TestMethod1() { var unsortedCollection = GenerateCollection(); var toSort =...
662 просмотров
schedule 01.07.2023

Как вы сортируете массив по алфавиту, используя sort_by в ruby?
У меня есть массив членства. В каждом членстве есть группа. Мне нужно отсортировать этот массив членства по имени группы. Я пробовал кучу разных способов, и последний способ таков: @memberships.sort_by! { |m| m.group.name } Однако это не...
49311 просмотров

Как активировать другой Enumerator внутри первого
У меня есть два отдельных действия, которые являются перечислителями. Один можно запустить независимо, другой зависит от первого, который будет запущен позже. Я думал, что я был бы очень умным, если бы сделал это: public...
546 просмотров
schedule 10.07.2022

Связи Rails Active Record с Enumerable
В некоторых случаях, когда я получаю отношение ActiveRecord, я испытываю странное поведение с .each в ActiveRecord::Relation Кажется, когда ActiveRecord::Relation делегирует :each в :to => :to_a ( источник ) @tasks =...
2543 просмотров

Перечислители в Ruby
У меня проблемы с пониманием Enumerators в Ruby. Пожалуйста, поправьте меня. Если я ошибаюсь, метод o.enum_for(:arg) должен преобразовывать объект в Enumerator, и каждая итерация по объекту o должна вызывать метод arg ? Что меня смущает, так...
438 просмотров
schedule 27.11.2022

Как использовать метод Ruby Enumerable .map, чтобы сделать что-то похожее на карту в C++
map(-30, -89.75, 89.75, 0, 360) Я ищу что-то вроде этого, где: -30 - это входное значение. От -89,75 до 89,75 — это диапазон возможных входных значений. 0–360 — это последний диапазон, на который нужно сопоставить Мне сказали, что...
189 просмотров
schedule 18.12.2022

Enumerable изменяет мое поведение `to_json`
У меня есть приложение rails и класс, который я написал как его часть (не ActiveRecord или что-то в этом роде). Данные хранятся в простых переменных экземпляра (строка, целые числа, массивы...) Когда я вызываю to_json для его экземпляра, я...
241 просмотров

Каков наилучший способ вернуть Enumerator::Lazy, если ваш класс не определяет #each?
Enumerable#lazy полагается на ваше перечисление, предоставляющее метод #each . Если в вашем перечислимом нет метода #each , вы не можете использовать #lazy . Теперь Kernel#enum_for и #to_enum позволяют указать метод перечисления, отличный...
1047 просмотров
schedule 20.05.2023

ruby enumerables: есть ли обнаружение результатов оценки блока?
Я ищу что-то похожее на #detect в перечислениях, но не совсем. Вот что делает перечисление: [1, 2, 3].detect {|i| i > 1 } #=> 2 он возвращает первый экземпляр массива, который соответствует условию. Теперь моя цель - вернуть значение...
124 просмотров
schedule 09.10.2022

Пропуск значения на enumerable#map, если блок кода оценивается как false
Есть ли способ реорганизовать этот метод с помощью карты? (это намерение этого метода состоит в том, чтобы вернуть массив простых чисел между 1 и максимальным параметром) def primes(max) prime_arr = [] (1..max).each {|i| prime_arr << i...
86 просмотров
schedule 12.06.2022

Зачем Enumerable#detect нужен Proc/лямбда?
Enumerable#detect возвращает первое значение массива, где блок оценивается как true . У него есть необязательный аргумент, который должен отвечать на call и вызывается в этом случае, возвращая его значение. Так, (1..10).detect(lambda{...
1663 просмотров
schedule 22.08.2022