suwu150
suwu150
采纳率44.3%
2016-04-11 15:52 阅读 5.1k

Java中如何给字符串加空格

Java中如何在一个字符串中每隔四个字符,加入一个空格,然后再将字符串输入到一个新定义的字符串,如:
str1=ADSFBKI89H8H8M8J8F8T9%Th09I;
我需要每隔四个加一个空格,有几种实现方法??

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

7条回答 默认 最新

  • 已采纳
    qq_34108945 ActualMental 2016-04-11 16:50

    给一种实现,直接上代码......
    import java.util.Arrays;

    public class Test09 {
    public static void main(String[] args) {
    String old="ADSFBKI89H8H8M8J8F8T9%Th09I";
    char[] chars=new char[old.length()];//创建字符串等长的字符数组,用于存放拆分的字符
    old.getChars(0, old.length(), chars, 0);//将字符串拆分为字符存到chars数组中
    // System.out.println(Arrays.toString(chars));
    StringBuilder sb=new StringBuilder();//频繁修改字符串时使用StringBuilder效率高
    int count=0;
    for(char ch:chars){//遍历字符数组,存入sb中,每4个加一个空格
    sb.append(ch);
    count++;
    if(count%4==0){
    sb.append(" ");
    }
    }
    String news=sb.toString();//新字符串生成
    System.out.println(news);//打印结果:ADSF BKI8 9H8H 8M8J 8F8T 9%Th 09I
    }

    }

    点赞 评论 复制链接分享
  • suwu150 suwu150 2016-04-12 09:51

    有没有会正则表达式写的,使用正则表达式能不能加入空格

    点赞 2 评论 复制链接分享
  • devmiao devmiao 2016-04-11 15:54
     for (int i = 0; i < str1.length(); i+=4)
    {
    Str2 += str1.subString(i, 4) + " ";
    }
    
    
    点赞 评论 复制链接分享
  • sl_18500 小小Q_Forler 2016-04-12 02:31

    for (int i = 0; i < str1.length(); i+=4)
    {
    Str2 += str1.subString(i, 4) + " ";
    i=i+4;
    }

    点赞 评论 复制链接分享
  • sl_18500 小小Q_Forler 2016-04-12 02:39
    for (int i = 0; i < str1.length(); i++)
        {
            if(i+4<str1.length())
                str2 += str1.substring(i, i+4) + " ";
            else
                str2 += str1.substring(i, str1.length());
            i=i+3;
        }
    
        亲测没问题
    
    点赞 评论 复制链接分享
  • Ro_bot 「已注销」 2016-04-12 06:43
     public class StringTest {
    
        public static void main(String[] args) {
    
            String str = "ADSFBKI89H8H8M8J8F8T9%Th09I";
            String stri = spaceAt4(str);
            System.out.println(stri);
    
        }
    
        public static String spaceAt4(String str) {
    
            StringBuilder sb = new StringBuilder();
            int length = str.length();
            for (int i = 0; i < length; i += 4) {
                if (length - i <= 8) {      //防止ArrayIndexOutOfBoundsException
                    sb.append(str.substring(i, i + 4)).append(" ");
                    sb.append(str.substring(i + 4));
                    break;
                }
                sb.append(str.substring(i, i + 4)).append(" ");
            }
    
            return sb.toString();
        }
    
    }
    
    点赞 评论 复制链接分享
  • love_000000 a_small_brick 2018-05-30 09:34

    text..replaceAll(".{4}(?!$)", "$0 ") 4是间距 在String每隔固定字符,加入空格

    点赞 评论 复制链接分享

相关推荐