[英]Jstl: format string number with spaces
我正在尋找以下的實現:
我有一個字符串: 001001001
我需要在輸出中接收: 001 001 001
我檢查了formatNumber
和DecimalFormat
它們無法提供此類輸出。 還有其他內置方法嗎?
當前,我創建了一些服務器端功能(實際上,我認為這不是那么出色的解決方案):
StringBuffer result = new StringBuffer("");
for (int i = 1; i <= 9; i++) {
result.append(input.charAt(i - 1));
if (i % 3 == 0)
result.append(" ");
}
return result.toString();
我使用下面的方法。 不像nKognito的示例那樣在末尾添加額外的空間。
public static String format(String inputUnformatted, int groupSize, String separator) {
StringBuilder result = new StringBuilder(inputUnformatted);
int i = groupSize;
while (i < inputUnformatted.length()) {
result.insert(inputUnformatted.length() - i, separator);
i += groupSize;
}
return result.toString();
}
public static void main(String[] args) {
String input = "001001001";
StringBuilder result = new StringBuilder();
int j = 0;
for (int i = 0; i < input.length(); i++) {
if (j > 2) {
result.append(" ");
j = 0;
}
result.append(input.charAt(i));
j++;
}
System.out.println(result.toString());
}
試試這段代碼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.