49887


Ruby初心者です．  
クラスのインスタンスをまとめた配列を作りたいです．  
UnitTest時に型？のエラーも出てしまい，困っています．  
ご教授宜しくお願いします．

イメージとしては以下のような感じです．

[code]

    class Dummy
    
    end
    
    class UnitTest < Test::Unit::TestCase
    
      def test_addArray
    
        numOfTrials = 10
    
        # とりあえず配列の箱を用意
        models = []
    
        for num in 0 ... numOfTrials do
    
          dummy = Dummy.new
    
          models.concat(dummy)
          p models
    
        end 
      end
    end
    
[/code]

## エラーは以下です．

[code]

       16:      # とりあえず配列の箱を用意
       17:      models = []
       18: 
    => 19:      for num in 0 ... numOfTrials do
       20:
       21:          dummy = Dummy.new
       22:
    test4.rb:19:in `each`
    test4.rb:23:in `block in test_addArray`
    test4.rb:23:in `concat`
    Error: test_addArray(UnitTest): TypeError: no implicit conversion of Dummy into Array
    
[/code]


CC BY-SA 4.0
2018-11-02T06:36:38.693
49886
2018-11-02T06:55:59.910
30173
question
ruby
クラスのインスタンスをまとめた配列を作りたい


`Array#concat` は `配列`に`配列`を結合するメソッドです。

今回やりたいことをするには

`models.concat(dummy)`ではなく、  
`models.push(dummy)` もしくは `models << dummy`です。


CC BY-SA 4.0
2018-11-02T06:55:59.910
49887
2018-11-02T06:55:59.910
9008
49886
answer