import java.text.MessageFormat; import java.util.Date; public class I18nFormat { void test() { MessageFormat.format( "{0} {1, number} {2, time} {3, date} {4, choice, 0#zero}", "S", 1, new Date(), new Date(), 0); MessageFormat.format("{0, number}{1, number}", 1, 2); MessageFormat.format("{0, number}{0}", 1); //:: warning: (i18nformat.excess.arguments) MessageFormat.format("'{0, number}'", new Date(12)); //:: warning: (i18nformat.missing.arguments) MessageFormat.format("''{0, time, short}''{1}{2, time} {33, number}{44444}'{''''", 0); //:: warning: (i18nformat.missing.arguments) MessageFormat.format("{0, number}{1, number}", 1); //:: warning: (i18nformat.argument.unused) MessageFormat.format("{1, number}", 1, 1); //:: warning: (i18nformat.excess.arguments) MessageFormat.format("{0, number}", 1, new Date()); //:: warning: (i18nformat.indirect.arguments) MessageFormat.format("{0, number}", new Object[2]); MessageFormat.format("{0}", "S"); MessageFormat.format("{0}", 1); MessageFormat.format("{0}", new Date()); //:: error: (argument.type.incompatible) MessageFormat.format("{0, number}", "S"); MessageFormat.format("{0, number}", 1); //:: error: (argument.type.incompatible) MessageFormat.format("{0, number}", new Date()); //:: error: (argument.type.incompatible) MessageFormat.format("{0, time}", "S"); MessageFormat.format("{0, time}", 1); MessageFormat.format("{0, time}", new Date()); //:: error: (argument.type.incompatible) MessageFormat.format("{0, date}", "S"); MessageFormat.format("{0, date}", 1); MessageFormat.format("{0, date}", new Date()); } }