[自定义区间-Range]书里的例子 - 中文数字类
生活随笔
收集整理的這篇文章主要介紹了
[自定义区间-Range]书里的例子 - 中文数字类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
class ChineseNumberNumbers = ["一","二","三","四","五","六","七","八","九","十"]attr :chinese_numberdef initialize(value)if Numbers.include?(value)@chinese_number = valueelseraise "數字不正確"endenddef to_num #轉化為整數Numbers.index(@chinese_number)+1 if @chinese_numberenddef to_s@chinese_numberenddef succ #返回序列中的下一個對象 (Range類必須要的方法)raise(IndexError,"超出了數字范圍") if self.to_num>=10ChineseNumber.new(Numbers[self.to_num])enddef <=>(other) #比較兩個對象的大小 (Range類必須要的方法)self.to_num <=> other.to_numend
enddef ChineseNumber(val) #用來創建的工具方法
ChineseNumber.new(val)
endone = ChineseNumber("一")
four = ChineseNumber("四")
puts "#{one} => #{one.to_num}"
puts "#{one} 的下一個是 #{one.succ}"range = one..four
puts range.include?(ChineseNumber("三"))
range.each{|i| puts i }
?
轉載于:https://www.cnblogs.com/laoquans/p/3183942.html
總結
以上是生活随笔為你收集整理的[自定义区间-Range]书里的例子 - 中文数字类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IEC61850电能质量1~50次谐波有
- 下一篇: windows下增加python的库搜索