How to use String.format() in Java?

It works same as printf() of C.

%s for String 
%d for int 
%f for float

ahead

String.format("%02d", 8)

OUTPUT: 08

String.format("%02d", 10)

OUTPUT: 10

String.format("%04d", 10)

OUTPUT: 0010

so basically, it will pad number of 0's ahead of the expression, variable or primitive type given as the second argument, the 0's will be padded in such a way that all digits satisfies the first argument of format method of String API.


It just takes the variables hour, minute, and second and bring it the the format 05:23:42. Maybe another example would be this:

String s = String.format("Hello %s answered your question", "placeofm");

When you print the string to show it in the console it would look like this

System.out.println(s);

Hello placeofm answered your question

The placeholder %02d is for a decimal number with two digits. %s is for a String like my name in the sample above. If you want to learn Java you have to read the docs. Here it is for the String class. You can find the format method with a nice explanation. To read this docs is really important not even in Java.