コード例 #1
0
 /// <inheritdoc/>
 public new T walkInColumnOrder(FieldMatrixChangingVisitor <T> visitor, int startRow, int endRow, int startColumn, int endColumn)
 {
     checkSubMatrixIndex(startRow, endRow, startColumn, endColumn);
     visitor.start(getRowDimension(), getColumnDimension(),
                   startRow, endRow, startColumn, endColumn);
     for (int j = startColumn; j <= endColumn; ++j)
     {
         for (int i = startRow; i <= endRow; ++i)
         {
             T[] rowI = data[i];
             rowI[j] = visitor.visit(i, j, rowI[j]);
         }
     }
     return(visitor.end());
 }
コード例 #2
0
        /// <inheritdoc/>
        public new T walkInColumnOrder(FieldMatrixChangingVisitor <T> visitor)
        {
            int rows    = getRowDimension();
            int columns = getColumnDimension();

            visitor.start(rows, columns, 0, rows - 1, 0, columns - 1);
            for (int j = 0; j < columns; ++j)
            {
                for (int i = 0; i < rows; ++i)
                {
                    T[] rowI = data[i];
                    rowI[j] = visitor.visit(i, j, rowI[j]);
                }
            }
            return(visitor.end());
        }
コード例 #3
0
 /// <inheritdoc/>
 public T walkInColumnOrder(FieldMatrixChangingVisitor <T> visitor, int startRow, int endRow, int startColumn, int endColumn)
 {
     checkSubMatrixIndex(startRow, endRow, startColumn, endColumn);
     visitor.start(getRowDimension(), getColumnDimension(),
                   startRow, endRow, startColumn, endColumn);
     for (int column = startColumn; column <= endColumn; ++column)
     {
         for (int row = startRow; row <= endRow; ++row)
         {
             T oldValue = getEntry(row, column);
             T newValue = visitor.visit(row, column, oldValue);
             setEntry(row, column, newValue);
         }
     }
     return(visitor.end());
 }
コード例 #4
0
        /// <inheritdoc/>
        public T walkInColumnOrder(FieldMatrixChangingVisitor <T> visitor)
        {
            int rows    = getRowDimension();
            int columns = getColumnDimension();

            visitor.start(rows, columns, 0, rows - 1, 0, columns - 1);
            for (int column = 0; column < columns; ++column)
            {
                for (int row = 0; row < rows; ++row)
                {
                    T oldValue = getEntry(row, column);
                    T newValue = visitor.visit(row, column, oldValue);
                    setEntry(row, column, newValue);
                }
            }
            return(visitor.end());
        }
コード例 #5
0
 /// <inheritdoc/>
 public T walkInOptimizedOrder(FieldMatrixChangingVisitor <T> visitor, int startRow, int endRow, int startColumn, int endColumn)
 {
     return(walkInRowOrder(visitor, startRow, endRow, startColumn, endColumn));
 }
コード例 #6
0
 /// <inheritdoc/>
 public T walkInOptimizedOrder(FieldMatrixChangingVisitor <T> visitor)
 {
     return(walkInRowOrder(visitor));
 }