有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java返回字符串的格式类似于信用卡号

我有一个简单的cardNumber字符串,我正试图为我的系统格式化它。出来项次

这里是我的系统的方法。出来ln电话

public String getCardNumber() 
{
    cardNumber = "0000 0000 0000 0000";
    return cardNumber;
}

但cardNumber=“0000”的组成部分;是我试图格式化它的样子,所以1234567812345752变成1234567891245752

我已经看过substring()之类的东西,但我看不到一种简单的方法来自动遍历每4个字符并插入一个空格


共 (3) 个答案

  1. # 1 楼答案

    您只需要手动编辑字符串

            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个字符之间添加一个空格

  2. # 2 楼答案

    要在16个字符的字符串中每4个字符后添加一个空格,请执行以下操作

    String number = "1234123412341234";
    number = number.substring(0,3) + " " + number.substring(4, 7) + " " + number.substring(8, 11) + " " + number.substring(12, number.length()); 
    
  3. # 3 楼答案

    尝试以下方法:

    public String getNumberString() {
        DecimalFormatSymbols symbols = new DecimalFormatSymbols();
        symbols.setGroupingSeparator(' ');
        DecimalFormat fmt = new DecimalFormat("0000,0000,0000,0000", symbols);
        return fmt.format(this.number);
    }