右对齐Java中的字符串数字格式

时间:2014-02-18 21:06:14

标签: java string number-formatting right-align

我需要使用加号将输入的数字字符串与掩码对齐。

例如:

    String input = "893";
    String mask = "&&&&&&";

应该返回

    String output = "+++893";

我对如何使用NumberFormat和DecimalFormat实现这一点感到非常困惑,因为我之前没有使用它们。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

如果您需要使用DeciamlFormat,可以使用:

int input = 893;
DecimalFormat decFormat = new DecimalFormat("000000"); //as many palces as you need
String output = decFormat.format(input);

然后用+号替换所有前导零。

String.format("%06d", input); //also gives you leading zeros 

如果总是想要6个位置,你仍然需要检查输出是否太长。

答案 1 :(得分:0)

您可以尝试这样做:如果蒙版的长度大于输入的长度,请取差值并在输入的前面添加许多加号。