2

我想把 a 的价值放在{0}。使用 C#,我编码为:

String a="123"
String b="Xin chao: {0}, ban the nao";
String c=String.Format(b,a);

但是在Java中我不知道。你能帮助我吗?

4

4 回答 4

5

Java的对应物是java.text.MessageFormat允许使用格式方法替换像您问题中的占位符

String a = "123";
MessageFormat.format("Xin chao: {0}, ban the nao", a);
于 2012-09-25T10:51:18.457 回答
3
String b= "Xin chao: %s";
String bF = String.format(b,"123");
于 2012-09-25T10:49:17.343 回答
2

String.format(String format, Object... args)

例如

String s = String.format("Xin chao: %1$s", "123");
于 2012-09-25T10:51:24.517 回答
0

如果你不知道{0}会出现在哪里,你可以使用String.replaceAll()方法:

    String a = "123";
    String b = "Xin chao: {0}, ban the nao";
    String c = b.replaceAll("\\{0\\}", a);

您可能需要检查StringEscapeUtils以进行自动转义。

于 2012-09-25T10:51:50.537 回答