[#954] Rational — keiju@... (Keiju ISHITSUKA)

けいじゅ@SHLジャパンです.

23 messages 1996/10/30
[#955] Re: Rational — matz@... (Yukihiro Matsumoto) 1996/10/30

まつもと ゆきひろです.

[#968] Re: Rational 1996/10/31

けいじゅ@SHLジャパンです.

[ruby-list:978] == and hash[Rational]

From: keiju@... (Keiju ISHITSUKA)
Date: 1996-10-31 06:50:21 UTC
List: ruby-list #978
けいじゅ@SHLジャパンです. 

Rationalがらみで気になることを発見しました.

ドキュメントによると,
 == で真になるもの同士は同じハッシュ値を持たねばならないとなっています
が,

1 == 1   --> TRUE
1.0 == 1 --> TRUE

ですが, hash値は 1と45637 になっています. これは問題ではないでしょうか?

質問:
Rationalには == が再定義され正しく動作しているのですが, Comparableから
継承しているのでしょうか???

1 == Rational(1, 1) --> TRUE

この場合, Ratinalのハッシュ値は1.hashと同じであるべきなのでしょうか??

__
.........................................石塚 圭樹@SHLジャパン(株)...
------------>アドレス変わりました!! e-mail: keiju@shljapan.co.jp <----

In This Thread

Prev Next