org.codehaus.groovy.runtime

## Class GStringImpl

- java.lang.Object
- - groovy.lang.GroovyObjectSupport
  - - groovy.lang.GString
    - - org.codehaus.groovy.runtime.GStringImpl

All Implemented Interfaces:
  Buildable, GroovyObject, Writable, Serializable, CharSequence, Comparable

    public class GStringImpl
    extends GString

Default implementation of a GString used by the compiler. A GString consist of a list of values and strings which can be combined to create a new String.

Author:
  Jochen Theodorou
See Also:
  `GString`, Serialized Form

### Field Summary

### Fields inherited from class groovy.lang.GString

`EMPTY`

### Constructor Summary

Constructors
Constructor and Description
`GStringImpl(Object[] values, String[] strings)` Create a new GString with values and strings.

### Method Summary

Methods
`String[]` `getStrings()` Get the strings of this GString.

### Methods inherited from class groovy.lang.GString

`build, charAt, compareTo, equals, equals, getValue, getValueCount, getValues, hashCode, invokeMethod, length, negate, plus, plus, subSequence, toString, writeTo`

### Methods inherited from class groovy.lang.GroovyObjectSupport

`getMetaClass, getProperty, setMetaClass, setProperty`

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

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### GStringImpl

    public GStringImpl(Object[] values,
               String[] strings)

Create a new GString with values and strings.

Each value is prefixed by a string, after the last value an additional String might be used. This means `strings.length == values.length || strings.length == values.length + 1`.

NOTE: The lengths are not checked. Using different lengths might result in unpredictable behaviour.

Parameters:
  `values` - the value parts
  `strings` - the string parts

### Method Detail

#### getStrings

    public String[] getStrings()

Get the strings of this GString.

This methods returns the same array as used in the constructor. Changing the values will result in changes of the GString. It is not recommended to do so.

Specified by:
  `getStrings` in class `GString`