Android字符串格式不起作用

时间:2017-05-14 13:17:58

标签: java android string format

我遇到String.format问题在android中我想用我的id替换 {0} 。 我的这段代码不起作用:

String str = "abc&id={0}";
String result = String.format(str, "myId");

5 个答案:

答案 0 :(得分:1)

我认为你应该使用替换方法而不是格式。

String str = "abc&id={0}";
str.replace("{0}","myId");

答案 1 :(得分:1)

你有2种方法可以做到这一点,你正在混合它们:)

1.String格式:

String str = "abc&id=%s";//note the format string appender %s
String result = String.format(str, "myId");

2.Message格式:

String str = "abc&id={0}"; // note the index here, in this case 0
String result = MessageFormat.format(str, "myId");

答案 2 :(得分:0)

您必须将整数值设置为单独的变量。

String str = "abc&id";
int myId = 001;
String result = str+myId;

答案 3 :(得分:0)

试试这个,

String result = String.format("abc&id=%s", "myId");

编辑,如果您想要多个ID,

String.format("abc&id=%s.id2=%s", "myId1", "myId2");

答案 4 :(得分:0)

您要查找的语法是:

String str = "abc&id=%1$d";
String result = String.format(str, id);

$d,因为它是小数。

其他用例:

String.format("More %2$s for %1$s", "Steven", "coffee");
// ==> "More coffee for Steven"

它使您可以在任意位置多次重复一个参数。