Class PersonNameFormatter

java.lang.Object
com.ibm.icu.text.PersonNameFormatter

public class PersonNameFormatter extends Object
A class for formatting names of people. Takes raw name data for a person and renders it into a string according to the caller's specifications, taking into account how people's names are rendered in the caller's locale.

The Length, Usage, and Formality options can be used to get a wide variety of results. In English, they would produce results along these lines:

REFERRING ADDRESSING MONOGRAM
FORMAL INFORMAL FORMAL INFORMAL FORMAL INFORMAL
LONG James Earl Carter Jr. Jimmy Carter Mr. Carter Jimmy JEC JC
MEDIUM James E. Carter Jr. Jimmy Carter Mr. Carter Jimmy C J
SHORT J. E. Carter Jimmy Carter Mr. Carter Jimmy C J
Status:
Stable ICU 73.
  • Constructor Details

    • PersonNameFormatter

      @Deprecated public PersonNameFormatter(Locale locale, String[] gnFirstPatterns, String[] snFirstPatterns, String[] gnFirstLocales, String[] snFirstLocales)
      Deprecated.
      This API is for unit testing only.
      Status:
      Internal. This API is ICU internal only.
  • Method Details

    • builder

      public static PersonNameFormatter.Builder builder()
      Returns a Builder object that can be used to construct a new PersonNameFormatter.
      Returns:
      A new Builder.
      Status:
      Stable ICU 73.
    • toBuilder

      public PersonNameFormatter.Builder toBuilder()
      Returns a Builder object whose fields match those used to construct this formatter, allowing a new formatter to be created based on this one.
      Returns:
      A new Builder that can be used to create a new formatter based on this formatter.
      Status:
      Stable ICU 73.
    • formatToString

      public String formatToString(PersonName name)
      Formats a name.
      Parameters:
      name - A PersonName object that supplies individual field values (optionally, with modifiers applied) to the formatter for formatting.
      Returns:
      The name, formatted according to the locale and other parameters passed to the formatter's constructor.
      Status:
      Stable ICU 73.
    • toString

      public String toString()
      Overrides:
      toString in class Object
      Status:
      Stable ICU 73.