6

The String.Format in .NET (maybe just VB.NET) convert {0}, {1}, ... into determined String, for example:

Dim St As String = "Test: {0}, {1}"
Console.WriteLine(String.Format(St, "Text1", "Text2"))

I've tried to search in both Google and StackOverflows, but they all return number-string format.

2

4 Answers 4

8

The other suggestions are certainly good, but are more in the style of printf and its lineage which are more recent additions to Java. The code you posted looks to be inspired by MessageFormat.

String format = "Test: {0}, {1}"
System.out.println(MessageFormat.format(format, "Text1", "Text2"))

I'm not really certain about what the 'Return: statement is doing though.

Sign up to request clarification or add additional context in comments.

Comments

6

Use MessageFormat.format, you can also provide formatting arguments in the replacement tokens.

message = MessageFormat.format("This is a formatted percentage " +
                "{0,number,percent} and a string {1}", varNumber, varText);
        System.out.println(message);

message = MessageFormat.format("This is a formatted {0, number,#.##} " +
                "and {1, number,#.##} numbers", 25.7575, 75.2525);
        System.out.println(message);

Alternatively, String.format can be used but this doesn't guarantee position e.g. String.format("What do you get if you multiply %d by %s?", varNumber, varText);.

1 Comment

This answer is not complete. This is not the direct replacement. {0} and {1} in .NET are there so that they define the location of the parameters. For example it could be "Test: {1}, {0}", so %s, %s would replace wrong locations.
4
String.format("Test: %s, %s",string1,string2)

Comments

0
System.out.printf()
System.out.format()

For other methods use:

StringBuilder sb = new StringBuilder();
Formatter f = new Formatter(sb, Locale.US);
f.format("my %s", "string");

2 Comments

It looks a lot longer than spinning_plate's method, what is its difference?
It's the same result, although Formatter I believe can do a lot more but I would go with his method I just wanted to show some other ones in case you were doing different types of formatting.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.