2 suwu150 suwu150 于 2016.04.11 23:52 提问

Java中如何给字符串加空格

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

7个回答

qq_34108945
qq_34108945   2016.04.12 00: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
}

}

devmiao
devmiao   Ds   Rxr 2016.04.11 23:54
 for (int i = 0; i < str1.length(); i+=4)
{
Str2 += str1.subString(i, 4) + " ";
}

qq_34108945
qq_34108945 看着很简单,思路不错
一年多之前 回复
qq_34108945
qq_34108945 好像不行
一年多之前 回复
suwu150
suwu150   2016.04.12 17:51

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

CSDNXIAOD
CSDNXIAOD   2016.04.12 00:02

java去除字符串空格
Java中如何去掉字符串中的空格
【JAVA】之【去掉字符串中的空格】
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

sl_18500
sl_18500   2016.04.12 10:31

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

sl_18500
sl_18500   2016.04.12 10: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
Ro_bot   2016.04.12 14: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();
    }

}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!