Java中如何给字符串加空格

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

给一种实现,直接上代码......
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
}

}

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

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

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;
    }

    亲测没问题
 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();
    }

}

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

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