[ruby-dev:50306] [Ruby trunk Feature#2968] 数値の正負を返すメソッド

From: mame@...
Date: 2017-10-22 13:33:48 UTC
List: ruby-dev #50306
Issue #2968 has been updated by mame (Yusuke Endoh).


5 年ほど議論が無いので一旦 close します。必要なら、現状を再確認の上、reopen や再提案をするといいと思います。
ちょっと調べたところ、positive? や negative? は #11151 で導入されましたが、`(-0.0).negative?` は false になるようです。

----------------------------------------
Feature #2968: 数値の正負を返すメソッド
https://bugs.ruby-lang.org/issues/2968#change-67523

* Author: naruse (Yui NARUSE)
* Status: Assigned
* Priority: Normal
* Assignee: mrkn (Kenta Murata)
* Target version: next minor
----------------------------------------
=begin
 数値の正負を返すメソッドが欲しいです。
 主たる想定用途は 0.0 と -0.0 を区別したいときです。
 これは、0.0 > -0.0 や 0.0 == -0.0 では知ることができません。
 とりあえず flo.to_s[0] == ?- で知ることができますが、これではあんまりです。
 
 悩みどころはいつもの通りメソッド名ですが、
 * Numeric#positive? と Numeric#negative?
 * Numeric#sign -> 負で -1、正で 1
 * Numeric#sign? -> 負で true, 正で false (signbit(3) に習う)
 あたりでしょうか。
 
 いかがでしょう。
=end




-- 
https://bugs.ruby-lang.org/

In This Thread

Prev Next