Я прихожу в Ruby с Java и не очень комфортно с ним на второй день. Я делаю это, чтобы инициализировать колоды карт с заданным количеством колод. Скажем, я буду играть с 2 колодами карт, по 52 карты в каждой колоде и, следовательно, 104 карты в общей сложности (Jokers не используются). Моя программа выходит:Инициализировать массив с помощью цикла в Ruby
def initialize(num)
@num_of_decks = num
# initialize my cards here...
end
После инициализации, я хочу, чтобы мои карты, чтобы быть:
cards = {"Diamond A", "Diamond 2", ... "Diamond K",
"Club A", ...
...
"Spade A", ... "Spade K", // end of the first deck
"Diamond A", ...
...
"Spade A", ... "Spade K" // end of the second deck
}
Я хочу, чтобы моя программа, чтобы иметь возможность адаптироваться к любой num_of_decks
есть. На самом деле у меня нет четкого представления о том, как работают рубиновые петли, особенно когда кажется, что в Ruby не работают петли for
. Надеюсь, кто-нибудь может привести здесь пример, чтобы я мог изучить, как он работает.
Вы путаете свой синтаксис, это не действует рубин. Массивы используют '[]', хеши используют '{}'. – meagar
Если вы исходите из фона Java, вы должны продумать свой путь через это. Это относительно прямолинейная проблема кодирования. Шаги, которые вы предпримете, будут идентичны, хотя синтаксис будет другим, и результаты могут быть не такими идиоматическими, какими они могут быть. – meagar