org.apache.commons.math3.linear
Class RealMatrixFormat

java.lang.Object
  extended by org.apache.commons.math3.linear.RealMatrixFormat

public class RealMatrixFormat
extends Object

Formats a nxm matrix in components list format "{{a00,a01, ..., a0m-1},{a10, a11, ..., a1m-1},{...},{ an-10, an-11, ..., an-1m-1}}".

The prefix and suffix "{" and "}", the row prefix and suffix "{" and "}", the row separator "," and the column separator "," can be replaced by any user-defined strings. The number format for components can be configured.

White space is ignored at parse time, even if it is in the prefix, suffix or separator specifications. So even if the default separator does include a space character that is used at format time, both input string "{{1,1,1}}" and " { { 1 , 1 , 1 } } " will be parsed without error and the same matrix will be returned. In the second case, however, the parse position after parsing will be just after the closing curly brace, i.e. just before the trailing space.

Note: the grouping functionality of the used NumberFormat is disabled to prevent problems when parsing (e.g. 1,345.34 would be a valid number but conflicts with the default column separator).

Since:
3.1
Version:
$Id: RealMatrixFormat.java 1364793 2012-07-23 20:46:28Z tn $

Constructor Summary
RealMatrixFormat()
          Create an instance with default settings.
RealMatrixFormat(NumberFormat format)
          Create an instance with a custom number format for components.
RealMatrixFormat(String prefix, String suffix, String rowPrefix, String rowSuffix, String rowSeparator, String columnSeparator)
          Create an instance with custom prefix, suffix and separator.
RealMatrixFormat(String prefix, String suffix, String rowPrefix, String rowSuffix, String rowSeparator, String columnSeparator, NumberFormat format)
          Create an instance with custom prefix, suffix, separator and format for components.
 
Method Summary
 String format(RealMatrix m)
          This method calls format(RealMatrix,StringBuffer,FieldPosition).
 StringBuffer format(RealMatrix matrix, StringBuffer toAppendTo, FieldPosition pos)
          Formats a RealMatrix object to produce a string.
static Locale[] getAvailableLocales()
          Get the set of locales for which real vectors formats are available.
 String getColumnSeparator()
          Get the format separator between components.
 NumberFormat getFormat()
          Get the components format.
static RealMatrixFormat getInstance()
          Returns the default real vector format for the current locale.
static RealMatrixFormat getInstance(Locale locale)
          Returns the default real vector format for the given locale.
 String getPrefix()
          Get the format prefix.
 String getRowPrefix()
          Get the format prefix.
 String getRowSeparator()
          Get the format separator between rows of the matrix.
 String getRowSuffix()
          Get the format suffix.
 String getSuffix()
          Get the format suffix.
 RealMatrix parse(String source)
          Parse a string to produce a RealMatrix object.
 RealMatrix parse(String source, ParsePosition pos)
          Parse a string to produce a RealMatrix object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RealMatrixFormat

public RealMatrixFormat()
Create an instance with default settings.

The instance uses the default prefix, suffix and row/column separator: "[", "]", ";" and ", " and the default number format for components.


RealMatrixFormat

public RealMatrixFormat(NumberFormat format)
Create an instance with a custom number format for components.

Parameters:
format - the custom format for components.

RealMatrixFormat

public RealMatrixFormat(String prefix,
                        String suffix,
                        String rowPrefix,
                        String rowSuffix,
                        String rowSeparator,
                        String columnSeparator)
Create an instance with custom prefix, suffix and separator.

Parameters:
prefix - prefix to use instead of the default "{"
suffix - suffix to use instead of the default "}"
rowPrefix - row prefix to use instead of the default "{"
rowSuffix - row suffix to use instead of the default "}"
rowSeparator - tow separator to use instead of the default ";"
columnSeparator - column separator to use instead of the default ", "

RealMatrixFormat

public RealMatrixFormat(String prefix,
                        String suffix,
                        String rowPrefix,
                        String rowSuffix,
                        String rowSeparator,
                        String columnSeparator,
                        NumberFormat format)
Create an instance with custom prefix, suffix, separator and format for components.

Parameters:
prefix - prefix to use instead of the default "{"
suffix - suffix to use instead of the default "}"
rowPrefix - row prefix to use instead of the default "{"
rowSuffix - row suffix to use instead of the default "}"
rowSeparator - tow separator to use instead of the default ";"
columnSeparator - column separator to use instead of the default ", "
format - the custom format for components.
Method Detail

getAvailableLocales

public static Locale[] getAvailableLocales()
Get the set of locales for which real vectors formats are available.

This is the same set as the NumberFormat set.

Returns:
available real vector format locales.

getPrefix

public String getPrefix()
Get the format prefix.

Returns:
format prefix.

getSuffix

public String getSuffix()
Get the format suffix.

Returns:
format suffix.

getRowPrefix

public String getRowPrefix()
Get the format prefix.

Returns:
format prefix.

getRowSuffix

public String getRowSuffix()
Get the format suffix.

Returns:
format suffix.

getRowSeparator

public String getRowSeparator()
Get the format separator between rows of the matrix.

Returns:
format separator for rows.

getColumnSeparator

public String getColumnSeparator()
Get the format separator between components.

Returns:
format separator between components.

getFormat

public NumberFormat getFormat()
Get the components format.

Returns:
components format.

getInstance

public static RealMatrixFormat getInstance()
Returns the default real vector format for the current locale.

Returns:
the default real vector format.

getInstance

public static RealMatrixFormat getInstance(Locale locale)
Returns the default real vector format for the given locale.

Parameters:
locale - the specific locale used by the format.
Returns:
the real vector format specific to the given locale.

format

public String format(RealMatrix m)
This method calls format(RealMatrix,StringBuffer,FieldPosition).

Parameters:
m - RealMatrix object to format.
Returns:
a formatted matrix.

format

public StringBuffer format(RealMatrix matrix,
                           StringBuffer toAppendTo,
                           FieldPosition pos)
Formats a RealMatrix object to produce a string.

Parameters:
matrix - the object to format.
toAppendTo - where the text is to be appended
pos - On input: an alignment field, if desired. On output: the offsets of the alignment field
Returns:
the value passed in as toAppendTo.

parse

public RealMatrix parse(String source)
Parse a string to produce a RealMatrix object.

Parameters:
source - String to parse.
Returns:
the parsed RealMatrix object.
Throws:
MathParseException - if the beginning of the specified string cannot be parsed.

parse

public RealMatrix parse(String source,
                        ParsePosition pos)
Parse a string to produce a RealMatrix object.

Parameters:
source - String to parse.
pos - input/ouput parsing parameter.
Returns:
the parsed RealMatrix object.


Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.