org.apache.groovy.util

## Class BeanUtils

- java.lang.Object
- - org.apache.groovy.util.BeanUtils

-     public class BeanUtils
      extends Object

- - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static String` | `capitalize(String property)` This is the complement the behavior of the decapitalize(string) method.
    `static String` | `decapitalize(String property)` Returns a new String which is the same as the original except the first letter will be lowercase except for some special cases as per JavaBean handling.

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

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

- - ### Method Detail

    - #### decapitalize

          public static String decapitalize(String property)

      Returns a new String which is the same as the original except the first letter will be lowercase except for some special cases as per JavaBean handling. In particular, if the first two letters are both uppercase, e.g. URL, then no change of case occurs. Originally inspired by the method with the same name in java.lang.Introspector. See also: https://stackoverflow.com/questions/4052840/most-efficient-way-to-make-the-first-character-of-a-string-lower-case/4052914
      Parameters:
        `property` - a string representing the name of a JavaBean-like property
      Returns:
        the decapitalized string

    - #### capitalize

          public static String capitalize(String property)

      This is the complement the behavior of the decapitalize(string) method. We handle names that begin with an initial lowerCase followed by upperCase with special JavaBean behavior (which is to make no change). See GROOVY-3211.
      Parameters:
        `property` - the property name to capitalize
      Returns:
        the name capitalized, except when we don't