Package org.springframework.beans.propertyeditors

# Class StringArrayPropertyEditor

java.lang.Object
java.beans.PropertyEditorSupport
org.springframework.beans.propertyeditors.StringArrayPropertyEditor

All Implemented Interfaces:
  `PropertyEditor`

public class StringArrayPropertyEditor extends PropertyEditorSupport
Custom `PropertyEditor` for String arrays.

Strings must be in CSV format, with a customizable separator. By default, values in the result are trimmed of whitespace.

Author:
  Rod Johnson, Juergen Hoeller, Dave Syer
See Also:
  - `StringUtils.delimitedListToStringArray(java.lang.String, java.lang.String)`
  - `StringUtils.arrayToDelimitedString(java.lang.Object[], java.lang.String)`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`DEFAULT_SEPARATOR`
Default separator for splitting a String: a comma (",").

## Constructor Summary

Constructors
Constructor
Description
`StringArrayPropertyEditor()`
Create a new `StringArrayPropertyEditor` with the default separator (a comma).
`StringArrayPropertyEditor(String separator)`
Create a new `StringArrayPropertyEditor` with the given separator.
`StringArrayPropertyEditor(String separator, boolean emptyArrayAsNull)`
Create a new `StringArrayPropertyEditor` with the given separator.
`StringArrayPropertyEditor(String separator, boolean emptyArrayAsNull, boolean trimValues)`
Create a new `StringArrayPropertyEditor` with the given separator.
`StringArrayPropertyEditor(String separator, String charsToDelete, boolean emptyArrayAsNull)`
Create a new `StringArrayPropertyEditor` with the given separator.
`StringArrayPropertyEditor(String separator, String charsToDelete, boolean emptyArrayAsNull, boolean trimValues)`
Create a new `StringArrayPropertyEditor` with the given separator.

## Method Summary

Modifier and Type
Method
Description
`String`
`getAsText()`
`void`
`setAsText(String text)`

### Methods inherited from class java.beans.PropertyEditorSupport

`addPropertyChangeListener, firePropertyChange, getCustomEditor, getJavaInitializationString, getSource, getTags, getValue, isPaintable, paintValue, removePropertyChangeListener, setSource, setValue, supportsCustomEditor`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### DEFAULT_SEPARATOR

public static final String DEFAULT_SEPARATOR
Default separator for splitting a String: a comma (",").

See Also:
  - Constant Field Values

## Constructor Details

### StringArrayPropertyEditor

public StringArrayPropertyEditor()
Create a new `StringArrayPropertyEditor` with the default separator (a comma).

An empty text (without elements) will be turned into an empty array.

### StringArrayPropertyEditor

public StringArrayPropertyEditor(String separator)
Create a new `StringArrayPropertyEditor` with the given separator.

An empty text (without elements) will be turned into an empty array.

Parameters:
  `separator` - the separator to use for splitting a `String`

### StringArrayPropertyEditor

public StringArrayPropertyEditor(String separator, boolean emptyArrayAsNull)
Create a new `StringArrayPropertyEditor` with the given separator.

Parameters:
  `separator` - the separator to use for splitting a `String`
  `emptyArrayAsNull` - `true` if an empty String array is to be transformed into `null`

### StringArrayPropertyEditor

public StringArrayPropertyEditor(String separator, boolean emptyArrayAsNull, boolean trimValues)
Create a new `StringArrayPropertyEditor` with the given separator.

Parameters:
  `separator` - the separator to use for splitting a `String`
  `emptyArrayAsNull` - `true` if an empty String array is to be transformed into `null`
  `trimValues` - `true` if the values in the parsed arrays are to be trimmed of whitespace (default is `true`)

### StringArrayPropertyEditor

public StringArrayPropertyEditor(String separator, @Nullable String charsToDelete, boolean emptyArrayAsNull)
Create a new `StringArrayPropertyEditor` with the given separator.

Parameters:
  `separator` - the separator to use for splitting a `String`
  `charsToDelete` - a set of characters to delete, in addition to trimming an input String. Useful for deleting unwanted line breaks: for example, "\r\n\f" will delete all new lines and line feeds in a String.
  `emptyArrayAsNull` - `true` if an empty String array is to be transformed into `null`

### StringArrayPropertyEditor

public StringArrayPropertyEditor(String separator, @Nullable String charsToDelete, boolean emptyArrayAsNull, boolean trimValues)
Create a new `StringArrayPropertyEditor` with the given separator.

Parameters:
  `separator` - the separator to use for splitting a `String`
  `charsToDelete` - a set of characters to delete, in addition to trimming an input String. Useful for deleting unwanted line breaks: for example, "\r\n\f" will delete all new lines and line feeds in a String.
  `emptyArrayAsNull` - `true` if an empty String array is to be transformed into `null`
  `trimValues` - `true` if the values in the parsed arrays are to be trimmed of whitespace (default is `true`)

## Method Details

### setAsText

public void setAsText(String text) throws IllegalArgumentException

Specified by:
  `setAsText` in interface `PropertyEditor`
Overrides:
  `setAsText` in class `PropertyEditorSupport`
Throws:
  `IllegalArgumentException`

### getAsText

public String getAsText()

Specified by:
  `getAsText` in interface `PropertyEditor`
Overrides:
  `getAsText` in class `PropertyEditorSupport`