Как выбрать элементы массива в заданном диапазоне в Ruby?

В Java все находится в форме класса.

Если вы хотите использовать любой объект, тогда у вас есть две фазы:

  1. Объявить
  2. Инициализация

Пример:

  • Объявление: Object a;
  • Инициализация: a=new Object();

То же самое для концепции массива

  • Объявление: Item i[]=new Item[5];
  • Инициализация: i[0]=new Item();

Если вы не дают секцию инициализации, тогда возникает NullpointerException.

24
задан P Shved 19 August 2010 в 19:22
поделиться

5 ответов

Вы можете использовать диапазоны в индексе массива:

arr[100..200]
46
ответ дан 28 November 2019 в 06:28
поделиться

Это можно сделать так:

array[100..200] # returns the elements in range 100..200
# or
array[100,100] # returns 100 elements from position 100

Дополнительная информация

15
ответ дан 28 November 2019 в 06:28
поделиться

Ответ dvcolgan правильный, но похоже, что вы пытаетесь разбить свой массив на группы по 100 штук. В таком случае есть удобный встроенный метод для этого:

nums = (1..500).to_a

nums.each_slice(100) do |slice|
  puts slice.size
end

# => 100, 100, 100, 100, 100
11
ответ дан 28 November 2019 в 06:28
поделиться
sample_array = (1..500).to_a
elements_100_to_200 = sample_array[100..200]

Вы можете передать диапазон в качестве индекса в массив и получить подмассив с запрошенными элементами из этого поддиапазона.

2
ответ дан 28 November 2019 в 06:28
поделиться
new_array = old_array.first(200) - old_array.first(100)
-4
ответ дан 28 November 2019 в 06:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: