當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Ruby Integer.round用法及代碼示例


本文簡要介紹ruby語言中 Integer.round 的用法。

用法

round(ndigits= 0, half: :up) → integer

返回 self 四舍五入到最接近的值,精度為 ndigits 十進製數字。

ndigits 為負數時,返回的值至少有 ndigits.abs 尾隨零:

555.round(-1)      # => 560
555.round(-2)      # => 600
555.round(-3)      # => 1000
-555.round(-2)     # => -600
555.round(-4)      # => 0

ndigits 為零或正數時返回self

555.round     # => 555
555.round(1)  # => 555
555.round(50) # => 555

如果給出關鍵字參數half,並且self與兩個候選值等距,則根據給定的half值進行舍入:

  • :upnil :從零四舍五入:

    25.round(-1, half: :up)      # => 30
    (-25).round(-1, half: :up)   # => -30
  • :down:向零舍入:

    25.round(-1, half: :down)    # => 20
    (-25).round(-1, half: :down) # => -20
  • :even :向最後一個非零數字為偶數的候選者四舍五入:

    25.round(-1, half: :even)    # => 20
    15.round(-1, half: :even)    # => 20
    (-25).round(-1, half: :even) # => -20

如果 half 的值無效,則引發和異常。

相關: Integer#truncate

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Integer.round。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。