Есть ли способ проверить, является ли значение ha sh в Ruby одинаковым во всем, или сравнить только значения на равенство? - PullRequest
1 голос
/ 03 апреля 2020

У меня есть код ниже, который возвращает количество экземпляров элемента в массиве как ха sh. Теперь мне нужно проверить, совпадает ли значение. Например, если ha sh похож на это = {1 => 3, 2 => 3}, мне нужно проверить, совпадает ли значение, в этом случае, но не знаю, как это проверить.

arr.inject(Hash.new(0)) {|number,index| number[index] += 1 ;number}

Спасибо

1 Ответ

1 голос
/ 03 апреля 2020

Итак, учитывая h = { 1 => 3, 2 => 3 }, если я вас понял, вы хотите знать, все ли значения одинаковы. Если бы вы знали ключи, которые вы могли бы сделать

all_the_same = h[1] == h[2]

Если есть еще ключи, которые вы хотите проверить

all_the_same = h.values_at(1, 2, 3, 4).uniq.length == 1

Если вы не знаете, сколько у вас ключей или какие они ключи, которые вы могли бы сделать

all_the_same = h.values.uniq.length == 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...