Return 格式类似于信用卡号的字符串
Return String formatted like a credit card number
我有一个简单的 cardNumber 字符串,我正在尝试为我的 System.out.ln
设置格式
这是我的System.out.ln调用的方法
public String getCardNumber()
{
cardNumber = "0000 0000 0000 0000";
return cardNumber;
}
但 cardNumber 的组成部分 = "0000 0000 0000 0000";是我想要格式化的,所以 12345678912345752 变成 1234 5678 9124 5752
我看过 substring() 之类的东西,但我看不到一种简单的方法来遍历每 4 个字符并自动插入 space。
您只需手动编辑您的字符串
String input = "1234567891245752";
StringBuilder result = new StringBuilder();
for (int i = 0; i < input.length(); i++) {
if (i % 4 == 0 && i != 0) {
result.append(" ");
}
result.append(input.charAt(i));
}
System.out.println(result.toString());
看看我们在这里做的是遍历您的字符串,并在每 4 个字符之间添加一个空格。
要在 16 个字符的字符串中每 4 个字符后添加一个 space,请执行此操作。
String number = "1234123412341234";
number = number.substring(0,3) + " " + number.substring(4, 7) + " " + number.substring(8, 11) + " " + number.substring(12, number.length());
试试下面的方法:
public String getNumberString() {
DecimalFormatSymbols symbols = new DecimalFormatSymbols();
symbols.setGroupingSeparator(' ');
DecimalFormat fmt = new DecimalFormat("0000,0000,0000,0000", symbols);
return fmt.format(this.number);
}
我有一个简单的 cardNumber 字符串,我正在尝试为我的 System.out.ln
设置格式这是我的System.out.ln调用的方法
public String getCardNumber()
{
cardNumber = "0000 0000 0000 0000";
return cardNumber;
}
但 cardNumber 的组成部分 = "0000 0000 0000 0000";是我想要格式化的,所以 12345678912345752 变成 1234 5678 9124 5752
我看过 substring() 之类的东西,但我看不到一种简单的方法来遍历每 4 个字符并自动插入 space。
您只需手动编辑您的字符串
String input = "1234567891245752";
StringBuilder result = new StringBuilder();
for (int i = 0; i < input.length(); i++) {
if (i % 4 == 0 && i != 0) {
result.append(" ");
}
result.append(input.charAt(i));
}
System.out.println(result.toString());
看看我们在这里做的是遍历您的字符串,并在每 4 个字符之间添加一个空格。
要在 16 个字符的字符串中每 4 个字符后添加一个 space,请执行此操作。
String number = "1234123412341234";
number = number.substring(0,3) + " " + number.substring(4, 7) + " " + number.substring(8, 11) + " " + number.substring(12, number.length());
试试下面的方法:
public String getNumberString() {
DecimalFormatSymbols symbols = new DecimalFormatSymbols();
symbols.setGroupingSeparator(' ');
DecimalFormat fmt = new DecimalFormat("0000,0000,0000,0000", symbols);
return fmt.format(this.number);
}