APIdock / Ruby
/
method

build

ruby latest stable - Class: Matrix
build(row_count, column_count = row_count)
public

Creates a matrix of size row_count x column_count. It fills the values by calling the given block, passing the current row and column. Returns an enumerator if no block is given.

m = Matrix .build (2, 4) {|row , col| col - row  }
 => Matrix [[0, 1, 2, 3], [-1, 0, 1, 2]]
m = Matrix .build (3) { rand }
 => a 3x3 matrix with random elements
# File lib/matrix.rb, line 95
 def Matrix.build(row_count, column_count = row_count)
 row_count = CoercionHelper.coerce_to_int(row_count)
 column_count = CoercionHelper.coerce_to_int(column_count)
 raise ArgumentError if row_count < 0 || column_count < 0
 return to_enum :build, row_count, column_count unless block_given?
 rows = Array.new(row_count) do |i|
 Array.new(column_count) do |j|
 yield i, j
 end
 end
 new rows, column_count
 end

AltStyle によって変換されたページ (->オリジナル) /