auser auser - 2 months ago 18
Java Question

Correct format string for String.format or similar

I'm sure I've seen

String.format
used like this before:

String.format("Some {1}, {2}, {3}", var1, var2, var3);


Does this ring any bells for anyone? Maybe I'm thinking of C#, is there a way of achieving the same in java?

I know you can do something like:

String.format("Some %s, %d, %s", aString, aNumber, aString)


but the syntax I'm after is for the former...

Answer

What you are looking for is MessageFormat, which uses a given format and input parameters, e.g.

MessageFormat.format("Some {0}, {1}, {2}", var1, var2, var3);

And as already mentioned, String.format can still do the job using the alternate syntax, but it is less powerful in functionality and not what you requested.