def my_method(parameter)
if <what should be here?>
puts "parameter is a string"
elsif <and here?>
puts "parameter is a symbol"
end
end
24
A
cevap
45
en basit formu olabilir
def my_method(parameter)
puts "parameter is a #{parameter.class}"
case parameter
when Symbol
# process Symbol logic
when String
# process String logic
else
# some other class logic
end
end
Bu aynı zamanda çalışacak
20
def my_method(parameter)
if parameter.is_a? String
puts "parameter is a string"
elsif parameter.is_a? Symbol
puts "parameter is a symbol"
end
end
umarım bu yardımcı olur sorununuzu
11
if parameter.is_a? String
puts "string"
elsif parameter.is_a? Symbol
puts "symbol"
end
çözmek gerekir.
def my_method(parameter)
puts "parameter is a #{parameter.class}"
end
Ama gerçekten türüne göre bazı işlem yapmak istiyorsanız bunu:
+0
Üzgünüm, kodum geri kalan kısımda rahat değil :) –
1
def my_method(parameter)
if parameter.is_a? String
puts "parameter is a string"
elsif parameter.is_a? Symbol
puts "parameter is a symbol"
end
end
-1
if parameter.respond_to? id2name
p "Symbol"
else
p "not a symbol"
, ama zarif bir çözüm değil.
İlgili konular
- 1. + = ruby için metodun sembolü nedir?
- 2. 3 metodun
- 3. Windows'umda yüklü Ruby dev kitinin sürümü nasıl kontrol edilir?
- 4. Bir web sitesinde bir resmin bulunup bulunmadığı nasıl kontrol edilir?
- 5. Akışta bir Tarih nesnesi nasıl kontrol edilir?
- 6. .NET: Windows bir pencereye nasıl kontrol edilir
- 7. iOS'ta bozuk bir PDF nasıl kontrol edilir?
- 8. Css'de bir sınıf nasıl kontrol edilir?
- 9. Bir nesnenin derinliği nasıl kontrol edilir?
- 10. Enum bir desenle eşleşmiyorsa nasıl kontrol edilir?
- 11. AVPlayer durumu nasıl kontrol edilir?
- 12. Hazır animasyon nasıl kontrol edilir?
- 13. Yakınlık algılayıcısı nasıl kontrol edilir?
- 14. vim/macvim: bir metodun/sembolün nerede tanımlandığını bulun
- 15. Swift'de launchOptions nasıl kontrol edilir?
- 16. Ubuntu'da Apache2 nasıl kontrol edilir?
- 17. nasıl kullanılır? Aynı onay kutularında bir komut parametresi olarak kontrol edilir.
- 18. umbraco'da çerez nasıl kontrol edilir?
- 19. Medya birimi nasıl kontrol edilir?
- 20. Herhangi bir radyo düğmesi kontrol edilirse nasıl kontrol edilir
- 21. Bir sınıfın altındaki veya sınıfındaki tüm sınıflar nasıl kontrol edilir?
- 22. Bir python kitaplığını Ruby on Rails uygulamasına nasıl entegre edilir
- 23. Google Spreadsheet'de bir tamsayı aralığında bir değer nasıl kontrol edilir?
- 24. Bir dizide bir değer nasıl kontrol edilir benzersiz
- 25. GPS sensörünün varlığı nasıl kontrol edilir?
- 26. Bazı öğeler listede varsa nasıl kontrol edilir?
- 27. VB6 ADO Bağlantısı - Transaction'da Nasıl Kontrol Edilir?
- 28. github üretim şubesi nasıl kontrol edilir
- 29. Enum örneği temel sınıfını nasıl kontrol edilir?
- 30. QtWebkit: HTTP durum kodu nasıl kontrol edilir?
Bu, 'case parameter.class' değil mi? –
@Beerlington Sadece test ettim ve sadece parametre kullanarak çalışıyor. –
@Beerlington: Hayır: bir durumda x; ne zaman ....; Ruby, 'when' bloğuna girip girmeyeceğini belirlemek için' y === x' çalışır. '===' sadece “yararlı” bir şey yapmak için tanımlanmıştır; örneğin, sınıflar için, 'instance_of?'; aralıklar için, 'dahil?', vb –