44件ヒット
[1-44件を表示]
(0.147秒)
別のキーワード
ライブラリ
- ビルトイン (22)
- bigdecimal (11)
- matrix (11)
クラス
- BigDecimal (11)
- Matrix (11)
- Numeric (11)
- Rational (11)
検索結果
先頭4件
-
Rational
# coerce(other) -> Array (42126.0) -
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という 配列にして返します。
...other が同じクラスになるよう、自身か other を変換し [other, self] という
配列にして返します。
@param other 比較または変換するオブジェクト
//emlist[例][ruby]{
Rational(1).coerce(2) # => [(2/1), (1/1)]
Rational(1).coerce(2.2) # => [2.2, 1.0]
//}... -
Numeric
# coerce(other) -> [Numeric] (21268.0) -
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。
...Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
以下は Rational の coerce のソースです。other が自身の知らない数値クラスであった場合、
super を呼んでいることに注意して下さい。
//emlist[例][ru......by]{
# lib/rational.rb より
def coerce(other)
if other.kind_of?(Float)
return other, self.to_f
elsif other.kind_of?(Integer)
return Rational.new!(other, 1), self
else
super
end
end
//}
数値クラスの算術演算子は通常自分と演算できないクラスをオペラ......ドとして受け
取ると coerce を使って自分とオペランドを変換した上で演算を行います。
以下は Rational の + メソッドを一部省略したものです。
引数が自身の知らない数値クラスである場合、引数の coerce により自身を変換し... -
BigDecimal
# coerce(other) -> Array (21120.0) -
self と other が同じクラスになるよう、self か other を変換し [other, self] という配列にして返します。
...ェクト
BigDecimal#coerce は Ruby における強制型変換のための機能です。
BigDecimal オブジェクトとその他のオブジェクト間の各種の計算は
BigDecimal#coerce の結果を元に行われます。
//emlist[][ruby]{
require "bigdecimal"
a = BigDecimal("1.0")
b =......her に Rational オブジェクトを指定した場合は self の有効桁数を
用いて変換を行います。
数値を表す文字列から BigDecimal オブジェクトに変換する機能はデフォ
ルトでは無効になっています。必要な場合は ENABLE_NUMERIC_STRING を... -
Matrix
# coerce(other) -> Array (21114.0) -
他の数値オブジェクトとの変換を行います。
...トをMatrix::Scalarのオブジェクトに変換し、selfとの組を配列として返します。
@param other 変換する数値オブジェクト
//emlist[例][ruby]{
require 'matrix'
a1 = [1, 2]
a2 = [-1.25, 2.2]
m = Matrix[a1, a2]
r = Rational(1, 2)
p m.coerce(r) #=> [#<Matrix::Scalar:0x8......32df18 @value=(1/2)>, Matrix[[1, 2], [-1.25, 2.2]]]
//}...