ben bunu yapmak istiyorum:Dava desteklerinde ruby desteği değişiyor mu?
case cost
when cost between 1 and 3 then cost * 1.1
when cost between 3 and 5 then cost * 1.2
else
0
ben bunu yapmak istiyorum:Dava desteklerinde ruby desteği değişiyor mu?
case cost
when cost between 1 and 3 then cost * 1.1
when cost between 3 and 5 then cost * 1.2
else
0
Evet, case
tablolara aralıkları kullanabilirsiniz include?
aynı olacak şekilde tanımlanır:
case cost
when 1..3 then cost * 1.1
when 3..5 then cost * 1.2
Evet. Google'a bu düşünmek ya da sadece (IMO Ruby güzelliği, hangi: şeyler genellikle düşündüğünüz şekilde çalışır) deneyin vermedi neden bilmiyorum, ama sadece aynı cevap olacak: http://ilikestuffblog.com/2008/04/15/how-to-write-case-switch-statements-in-ruby/
Özellikle: Range#===
beri
case expression
when min..max
statements
else
statements
end
ne yazık ki, cevap Googling zaman ne gelir artık bu. SO'nın başarısı, sanırım. – Jaime
bu yüzden işe yarayacak? 0.01..0.99 yani 0.01 ila 0.99? – Blankman
@Blankman: Tabii. – sepp2k
@ Blankman Ranges kullanılabilir; 0.01..0.99 bir aralıktır; Evet, işe yarayacak. Kod yazmalısınız (ve okuyor olmalısınız); Her iki sorunuz da - gerçekten sadece aynı bir varyasyon - yazmaya başladığınızda kendinize cevap verecektir! (Bu teşvik edici değil, aşağılayıcı değil.) –