Package: java.lang

## Class StringBuilder

- - ### Methods Summary

    Methods
    Return type | Name and parameters
    --- | ---
    `StringBuilder` | `append(GStringImpl gs)` Append the GString to the StringBuilder using a more efficient approach than Java's default approach for a CharSequence.
    `int` | `getLength()` Provides a `getLength` alias for `length` for StringBuilder, supporting assignment arithmetic operator expressions involving the otherwise write-only length property.
    `StringBuilder` | `leftShift(Object value)` Overloads the left shift operator to provide syntactic sugar for appending to a StringBuilder.
    `String` | `plus(String value)` Appends a String to this StringBuilder.
    `void` | `putAt(EmptyRange range, Object value)` Supports the range subscript operator for StringBuilder.
    `void` | `putAt(IntRange range, Object value)` Supports the range subscript operator for StringBuilder.

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

    `addShutdownHook`, `any`, `any`, `asBoolean`, `asType`, `collect`, `collect`, `collect`, `dump`, `each`, `eachMatch`, `eachMatch`, `eachWithIndex`, `every`, `every`, `find`, `find`, `findAll`, `findAll`, `findIndexOf`, `findIndexOf`, `findIndexValues`, `findIndexValues`, `findLastIndexOf`, `findLastIndexOf`, `findResult`, `findResult`, `findResult`, `findResult`, `getAt`, `getMetaClass`, `getMetaPropertyValues`, `getProperties`, `grep`, `grep`, `hasProperty`, `identity`, `inject`, `inject`, `inspect`, `invokeMethod`, `is`, `isCase`, `isNotCase`, `iterator`, `metaClass`, `print`, `print`, `printf`, `printf`, `println`, `println`, `println`, `putAt`, `respondsTo`, `respondsTo`, `setMetaClass`, `split`, `sprintf`, `sprintf`, `stream`, `tap`, `toString`, `use`, `use`, `use`, `with`, `with`, `withCloseable`, `withMethodClosure`, `withStream`, `withTraits`

  - #### Methods inherited from interface java.lang.Comparable

    `numberAwareCompareTo`

  - #### Methods inherited from interface java.lang.CharSequence

    `asBoolean`, `asType`, `bitwiseNegate`, `capitalize`, `center`, `center`, `contains`, `containsIgnoreCase`, `count`, `denormalize`, `digest`, `drop`, `dropRight`, `dropWhile`, `eachLine`, `eachLine`, `endsWithAny`, `endsWithIgnoreCase`, `expand`, `expand`, `expandLine`, `find`, `find`, `find`, `find`, `findAll`, `findAll`, `findAll`, `findAll`, `getAt`, `getAt`, `getAt`, `getAt`, `getAt`, `getChars`, `getCodePoints`, `isAllWhitespace`, `isBigDecimal`, `isBigInteger`, `isBlank`, `isCase`, `isDouble`, `isFloat`, `isInteger`, `isLong`, `isNotCase`, `isNumber`, `leftShift`, `matches`, `md5`, `minus`, `minus`, `multiply`, `next`, `next`, `normalize`, `padLeft`, `padLeft`, `padRight`, `padRight`, `plus`, `previous`, `previous`, `readLines`, `replace`, `replace`, `replaceAll`, `replaceAll`, `replaceAll`, `replaceAll`, `replaceFirst`, `replaceFirst`, `replaceFirst`, `replaceFirst`, `reverse`, `sha256`, `size`, `split`, `splitEachLine`, `splitEachLine`, `startsWithAny`, `startsWithIgnoreCase`, `stripIndent`, `stripIndent`, `stripIndent`, `stripMargin`, `stripMargin`, `stripMargin`, `take`, `takeAfter`, `takeBefore`, `takeBetween`, `takeBetween`, `takeBetween`, `takeBetween`, `takeRight`, `takeWhile`, `toBigDecimal`, `toBigInteger`, `toDouble`, `toFloat`, `toInteger`, `toList`, `toLong`, `toSet`, `toShort`, `toURI`, `toURL`, `tokenize`, `tokenize`, `tokenize`, `tr`, `uncapitalize`, `unexpand`, `unexpand`, `unexpandLine`

- - ### Methods Detail

    - #### public StringBuilder append(GStringImpl gs)

      Append the GString to the StringBuilder using a more efficient approach than Java's default approach for a CharSequence.

      Parameters:
        `gs` - a GStringImpl
      Returns:
        the StringBuilder
      Since:
        3.0.8

    - #### public int getLength()

      Provides a `getLength` alias for `length` for StringBuilder, supporting assignment arithmetic operator expressions involving the otherwise write-only length property.

          def sb = new StringBuilder()
          sb << 'foobar'
          sb.length -= 3
          assert sb.toString() == 'foo'

      Returns:
        the length of the StringBuilder
      Since:
        5.0.0

    - #### public StringBuilder leftShift(Object value)

      Overloads the left shift operator to provide syntactic sugar for appending to a StringBuilder.

      Parameters:
        `value` - an Object
      Returns:
        the original StringBuilder
      Since:
        1.8.2

    - #### public String plus(String value)

      Appends a String to this StringBuilder.

      Parameters:
        `value` - a String
      Returns:
        a String
      Since:
        1.5.2

    - #### public void putAt(EmptyRange range, Object value)

      Supports the range subscript operator for StringBuilder.

      Parameters:
        `range` - a Range
        `value` - the object that's toString() will be inserted
      Since:
        1.5.2

    - #### public void putAt(IntRange range, Object value)

      Supports the range subscript operator for StringBuilder. Index values are treated as characters within the builder.

      Parameters:
        `range` - a Range
        `value` - the object that's toString() will be inserted
      Since:
        1.5.2