[#40890] windowsでコンテキストメニューの「印刷」を実行するには? — 岩崎 弘孝 <IH000667@...>
岩崎と申します。
7 messages
2005/07/01
[#40891] 配列をシャッフル — Hideo Konami <konami@...>
小波です。
25 messages
2005/07/01
[#40892] Re: 配列をシャッフル
— Hiroyuki Adachi <hiroyuki-a@...>
2005/07/01
array = [1, 2, 3, 4, 5]
[#40899] Re: 配列をシャッフル
— ktokita <ktokita-p@...>
2005/07/01
時田です
[#40904] slice の仕様とマニュアルの記述 — Hideo Konami <konami@...>
小波です。
6 messages
2005/07/02
[#40939] 値の集合内の中から値の大きな数個のみを取得するには? — 岩崎 弘孝 <IH000667@...>
岩崎と申します。
5 messages
2005/07/27
[#40941] オブジェクト配列の単一化は? — 小西 弘将 <konishi@...>
小西です。いつもお世話になります。
6 messages
2005/07/27
[#40955] irb --noreadline — Masatoshi SEKI <m_seki@...>
咳といいます。
10 messages
2005/07/29
[#40966] Solaris9上のREXML — Hirotaka Mizutani <hirotaka@...>
初めて投稿させて頂きます。水谷と申します。
6 messages
2005/07/29
[ruby-list:40942] Re: オブジェクト配列の単一化は?
From:
"H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Date:
2005-07-27 09:48:00 UTC
List:
ruby-list #40942
山本です。
>eql?の再定義がうまくいっていないのでしょうか?
eql? を再定義した場合は、hash も再定義する必要があります。
http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Object#eql.3f
というわけで、こんな感じでしょうか。
class Hoge
def initialize( n )
@name = n
end
def eql?( otr )
@name.eql?( otr.name )
end
def hash # a.eql?(b) が成り立つときは a.hash == b.hash でないといけない
@name.hash # なので、 @name.hash + 1039 なんてものでも OK ?
end
attr_accessor :name
end
dat = [ Hoge.new( "hoge" ),
Hoge.new( "hage" ),
Hoge.new( "boke" ),
Hoge.new( "hage" ),
Hoge.new( "boke" ) ]
dat.uniq!
dat.each do |d|
print d.name,"\n"
end