11

请任何人帮助我。我不知道如何在 android 中附加类似于以下格式的字符串:

String key = "";
append("%d-%d-%d", 0, 1, 2));

请给我一个例子。先感谢您。

4

3 回答 3

18

使用 StringBuilder 或 StringBuffer 但具有足够的初始容量以避免重新分配。默认容量是 16,所以一旦超过了,数据就必须复制到一个新的更大的地方。使用追加而不是 +。

int integer = 5;

StringBuilder s = new StringBuilder(100);
 s.append("something");
 s.append(integer);
 s.append("more text");
于 2013-03-21T04:46:21.987 回答
10

您可以使用 StringBuffer 或 StringBuilder

public class Test {

public static void main(String args[]) {
  StringBuffer sb = new StringBuffer("Test");
  sb.append(" String Buffer");
  System.out.println(sb); 
}  
}

这会产生以下结果:

Test String Buffer

字符串生成器:

StringBuilder strBuilder = new StringBuilder("foo");
strBuilder.append("bar");
strBuilder.append("baz");
String str = strBuilder.toString();

对于格式,请尝试

String.format("Hello %1$s, your name is %1$s and the time is %2$t", name, time)
于 2013-03-21T04:44:48.120 回答
3

您可以使用该String.format方法来做到这一点。

String test = "%d-%d-%d";
String.format(test, 0, 1, 2);

或与Locale.

String.format(Locale.US, test, 0, 1, 2);
于 2013-03-21T04:47:05.383 回答