0 votes
1 view
in Java by (10.2k points)

I am trying to use a .format method of a string. But if I place %1, %2, etc. in the string, java.util.UnknownFormatConversionException is thrown pointing to a confusing Java source code piece:

private void checkText(String s) {

    int idx;

    // If there are any '%' in the given string, we got a bad format

    // specifier.

    if ((idx = s.indexOf('%')) != -1) {

        char c = (idx > s.length() - 2 ? '%' : s.charAt(idx + 1));

        throw new UnknownFormatConversionException(String.valueOf(c));



From this I understand that % char is forbidden. If so, then what should I use for argument placeholders?

I use Scala 2.8

1 Answer

0 votes
by (46.1k points)

Check out this Scala example:

val placeholder = "Hello %s, isn't %s cool?"

val formatted = placeholder.format("Ivan", "Scala")

I also hold a blog post regarding making format like Python's %operator that might be helpful.

Related questions

Welcome to Intellipaat Community. Get your technical queries answered by top developers !