2017-02-16 7 views
0

私のTriangleクラスでは、以下の3つの引数をとるinitializeメソッドがあります。初期化時に引数が間違っています

"lib/triangle.rb:21:in `initialize': wrong number of arguments (given 3, expected 0) (ArgumentError)". 

アップ情報:

class Triangle 
    attr_accessor :side1, :side2, :side3 

    def initalize(one, two, three) 
     @side1 = one 
     @side2 = two 
     @side3 = three 
    end 
end 

私は新しいクラスを作成し、3つの引数を指定して、それを初期化し 、

one = Triangle.new(1,2,3) 
puts one.side1 
puts one.side2 
puts one.side3 

は、私はこのエラーを取得しますか?あなたがタイプミスを持って

答えて

3

def initalize # typo 
def initialize # correct 

はところで、kindシナリオを扱うの少ない手動の方法は次のとおりです。

def kind 
    :scalene if [@side1, @side2, @side3].uniq.length == 3 
end 
+0

すごいああ、ありがとう! – Edson

+0

甘い、 "ユニーク"について知らなかった、ありがとう。 – Edson

+0

@coreyward、あなたが私に尋ねるのが気にならないなら、正確には:scaleneはここに 'def kind'メソッド?私はちょうどそれがルビーメソッドと思って、それはないと思った?ここにあるものを混乱させるようなことは、数学的には3つの不平等な側面を意味します...しかし、ここで作られた方法ですか? – user273072545345

関連する問題