Class PersonNameFormatter


  • public class PersonNameFormatter
    extends java.lang.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
    • Constructor Detail

      • PersonNameFormatter

        @Deprecated
        public PersonNameFormatter​(java.util.Locale locale,
                                   java.lang.String[] patterns)
        Deprecated.
        This API is for unit testing only.
    • Method Detail

      • builder

        public static PersonNameFormatter.Builder builder()
        Returns a Builder object that can be used to construct a new PersonNameFormatter.
        Returns:
        A new Builder.
      • 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.
      • formatToString

        public java.lang.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.
      • toString

        public java.lang.String toString()
        Deprecated.
        This API is for debugging only.
        Overrides:
        toString in class java.lang.Object