@Test(threadPoolSize = 10, invocationCount = 10) public void pluralRulesTest() { String pt1 = "Hi {0, plural, one{man}other{men}}!"; assertEquals(pluralize(pt1, 1), "Hi man!"); assertEquals(pluralize(pt1, 20), "Hi men!"); String pt2 = "Hi {1} {2} {0, plural, one{man}other{men}}!"; assertEquals(pluralize(pt2, 1, "a", "b"), "Hi a b man!"); assertEquals(pluralize(pt2, 20, "c", "d"), "Hi c d men!"); String pt3 = "{0, plural, one{el niño}other{los niños}}!"; assertEquals(pluralize(ES, pt3, 1), "el niño!"); assertEquals(pluralize(ES, pt3, 20), "los niños!"); String pt4 = "{0, plural, one{el niño}other{los niños}} en {1}!"; assertEquals(pluralize(ES, pt4, 1, "su casa"), "el niño en su casa!"); assertEquals(pluralize(ES, pt4, 20, "el parque"), "los niños en el parque!"); }
public static String pluralize(final Locale locale, final String pattern, final Number value, final Object... args) { return withinLocale(new Callable<String>() { @Override public String call() throws Exception { return pluralize(pattern, value, args); } }, locale); }
ICUHumanize { public static String pluralize(final Locale locale, final String pattern, final Number value, final Object... args) { return withinLocale(new Callable<String>() { @Override public String call() throws Exception { return pluralize(pattern, value, args); } }, locale); } }
ICUHumanize { public static String pluralize(final Locale locale, final String pattern, final Number value, final Object... args) { return withinLocale(new Callable<String>() { @Override public String call() throws Exception { return pluralize(pattern, value, args); } }, locale); } private  ICUHumanize(); }
ICUHumanize { public static String pluralize(final Locale locale, final String pattern, final Number value, final Object... args) { return withinLocale(new Callable<String>() { @Override public String call() throws Exception { return pluralize(pattern, value, args); } }, locale); } private  ICUHumanize(); static String compactDecimal(final Number value); static String compactDecimal(final Number value, final CompactStyle style); static String compactDecimal(final Number value, final CompactStyle style, final Locale locale); static String compactDecimal(final Number value, final Locale locale); static DateFormat dateFormatInstance(final String pattern); static DateFormat dateFormatInstance(final String pattern, final Locale locale); static DecimalFormat decimalFormatInstance(final String pattern); static DecimalFormat decimalFormatInstance(final String pattern, final Locale locale); static String duration(final Number value); static String format(final String pattern, final Object... args); static String formatCurrency(final Number value); static String formatCurrency(final Number value, final Locale locale); static String formatDate(final Date value); static String formatDate(final Date value, final Locale locale); static String formatDate(final Date value, final String pattern); static String formatDate(final Date value, final String pattern, final Locale locale); static String formatDate(final int style, final Date value); static String formatDate(final int style, final Date value, final Locale locale); static String formatDateTime(final Date value); static String formatDateTime(final Date value, final Locale locale); static String formatDateTime(final int dateStyle, final int timeStyle, final Date value); static String formatDateTime(final int dateStyle, final int timeStyle, final Date value, final Locale locale); static String formatDecimal(final Number value); static String formatDecimal(final Number value, final Locale locale); static String formatPercent(final Number value); static String formatPercent(final Number value, final Locale locale); static String formatPluralCurrency(final Number value); static String formatPluralCurrency(final Number value, final Locale locale); static MessageFormat messageFormatInstance(final String pattern); static MessageFormat messageFormatInstance(final String pattern, final Locale locale); static String naturalDay(final Date value); static String naturalDay(final Date value, final Locale locale); static String naturalDay(final int style, final Date value); static String naturalTime(final Date duration); static String naturalTime(final Date reference, final Date duration); static String naturalTime(final Date reference, final Date duration, final Locale locale); static String naturalTime(final Date duration, final Locale locale); static String ordinalize(final Number value); static String ordinalize(final Number value, final Locale locale); static Number parseNumber(final String text); static Number parseNumber(final String text, final Locale locale); static String pluralize(final Locale locale, final String pattern, final Number value,
            final Object... args); static String pluralize(final String pattern, final Number value, final Object... args); static String replaceSupplementary(final String value); static String smartDateFormat(final Date value, final String skeleton); static String smartDateFormat(final Date value, final String skeleton, final Locale locale); static String spellNumber(final Number value); static String spellNumber(final Number value, final Locale locale); static String transliterate(final String text); static String transliterate(final String text, final String id); }
ICUHumanize { public static String pluralize(final Locale locale, final String pattern, final Number value, final Object... args) { return withinLocale(new Callable<String>() { @Override public String call() throws Exception { return pluralize(pattern, value, args); } }, locale); } private  ICUHumanize(); static String compactDecimal(final Number value); static String compactDecimal(final Number value, final CompactStyle style); static String compactDecimal(final Number value, final CompactStyle style, final Locale locale); static String compactDecimal(final Number value, final Locale locale); static DateFormat dateFormatInstance(final String pattern); static DateFormat dateFormatInstance(final String pattern, final Locale locale); static DecimalFormat decimalFormatInstance(final String pattern); static DecimalFormat decimalFormatInstance(final String pattern, final Locale locale); static String duration(final Number value); static String format(final String pattern, final Object... args); static String formatCurrency(final Number value); static String formatCurrency(final Number value, final Locale locale); static String formatDate(final Date value); static String formatDate(final Date value, final Locale locale); static String formatDate(final Date value, final String pattern); static String formatDate(final Date value, final String pattern, final Locale locale); static String formatDate(final int style, final Date value); static String formatDate(final int style, final Date value, final Locale locale); static String formatDateTime(final Date value); static String formatDateTime(final Date value, final Locale locale); static String formatDateTime(final int dateStyle, final int timeStyle, final Date value); static String formatDateTime(final int dateStyle, final int timeStyle, final Date value, final Locale locale); static String formatDecimal(final Number value); static String formatDecimal(final Number value, final Locale locale); static String formatPercent(final Number value); static String formatPercent(final Number value, final Locale locale); static String formatPluralCurrency(final Number value); static String formatPluralCurrency(final Number value, final Locale locale); static MessageFormat messageFormatInstance(final String pattern); static MessageFormat messageFormatInstance(final String pattern, final Locale locale); static String naturalDay(final Date value); static String naturalDay(final Date value, final Locale locale); static String naturalDay(final int style, final Date value); static String naturalTime(final Date duration); static String naturalTime(final Date reference, final Date duration); static String naturalTime(final Date reference, final Date duration, final Locale locale); static String naturalTime(final Date duration, final Locale locale); static String ordinalize(final Number value); static String ordinalize(final Number value, final Locale locale); static Number parseNumber(final String text); static Number parseNumber(final String text, final Locale locale); static String pluralize(final Locale locale, final String pattern, final Number value,
            final Object... args); static String pluralize(final String pattern, final Number value, final Object... args); static String replaceSupplementary(final String value); static String smartDateFormat(final Date value, final String skeleton); static String smartDateFormat(final Date value, final String skeleton, final Locale locale); static String spellNumber(final Number value); static String spellNumber(final Number value, final Locale locale); static String transliterate(final String text); static String transliterate(final String text, final String id);  }