SORU
14 AĞUSTOS 2010, CUMARTESİ


Nasıl rastgele bir dizi seçim muyum?

Eğer bu işi çok daha temiz bir yolu varsa bilmek istiyorum. Temel olarak, değişken uzunlukta bir dizi rastgele bir eleman almak istiyorum. Normalde, bu gibi yapardım:

myArray = ["stuff", "widget", "ruby", "goodies", "java", "emerald", "etc" ]
item = myArray[rand(myarray.length)]

Daha okunabilir / ikinci satır yerine daha basit bir şey var mı? Ya da bunu yapmanın en iyi yoludur. myArray.shuffle.first, yapabilirsin sanırım ama ben sadece birkaç dakika önce #shuffle üzerinde gördüm, henüz kullanmadım.

CEVAP
14 AĞUSTOS 2010, CUMARTESİ


Sadece Array#sample:

[:foo, :bar].sample # => :foo, or :bar :-)

Ruby 1.9.1 mevcuttur . Ruby önceki bir sürümü ile kullanmak da mümkün, 11* *olabilir.

Ruby 1.8.7 talihsiz ismi choice; kullanmamalısın yani sonraki sürümünde değiştirildi altında bulunduğunu unutmayın.

Bu durumda da yararlı değil, sample farklı bir kaç örnek isterseniz sayıda bağımsız değişken kabul eder.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DorkmanScott

    DorkmanScott

    14 NİSAN 2006
  • nemoking of kinges

    nemoking of

    4 EYLÜL 2009
  • TimMinchinLive

    TimMinchinLi

    23 ŞUBAT 2009