动态格式化字符串

豆腐啤酒:

在我徘徊并滚动自己的东西之前,我想知道是否有人知道做以下事情的方法...

目前,我正在使用MessageFormat创建一些字符串。我现在要求其中一些字符串具有可变数量的参数。

例如(当前代码):

MessageFormat.format("{0} OR {1}", array[0], array[1]);

现在我需要类似的东西:

// s will have "1 OR 2 OR 3"
String s = format(new int[] { 1, 2, 3 }); 

和:

// s will have "1 OR 2 OR 3 OR 4"
String s = format(new int[] { 1, 2, 3, 4 }); 

我可以考虑几种创建格式字符串的方法,例如,每个参数个数有1个String(它们的数量是有限的,所以这很实用,但似乎很糟糕),或者动态地构建字符串(有一个他们很多,所以这可能会很慢)。

还有其他建议吗?

托马斯·荣格:

除非,否则我会错过一些古老的东西join在Java 7获得String.join之前(不开玩笑),围绕着Apache公用语言lang StringUtils.join的一些实现

StringUtils.join(new Integer[] { 1, 2, 3, 4 }, "OR");

唯一的问题是它不能直接在原始int []数组上使用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章