Java 把绳子劈成碎片

Java 把绳子劈成碎片,java,string,split,Java,String,Split,我试图把一个字符串分成不同的部分,每个部分都有x个字符。我怎么能这样做呢 编辑:多亏了下面的@amith,我才算出了它,但我不知道如何使它不分裂文字,有什么想法吗 谢谢, -正在导出。列出拆分字符串(int interval,String str){ List<String> splitString(int interval, String str) { int length = str.length(); List<String> split = new

我试图把一个字符串分成不同的部分,每个部分都有x个字符。我怎么能这样做呢

编辑:多亏了下面的@amith,我才算出了它,但我不知道如何使它不分裂文字,有什么想法吗

谢谢, -正在导出。

列出拆分字符串(int interval,String str){
List<String> splitString(int interval, String str) {
    int length = str.length();
    List<String> split = new ArrayList<>();
    if(length < interval) {
        split.add(str);
    } else {
        for(int i=0;i<length;i+=interval) {
            int endIndex = i + interval;
            if(endIndex > length) {
                endIndex = length;
            }
            String substring = str.substring(i, endIndex);
            split.add(substring);
        }
    }
    return split;
}
int length=str.length(); 列表拆分=新建ArrayList(); if(长度<间隔){ split.add(str); }否则{ 对于(int i=0;i长度){ endIndex=长度; } String substring=str.substring(i,endIndex); split.add(子字符串); } } 收益分割; }

这是一个定期拆分字符串的示例代码

如果
结果
是一个
字符数组
,请尝试以下操作:

public static char[] split(String str, int numChar) {
    char[] s = str.toCharArray();
    if (numChar >= str.length()) {
        return s;
    }
    char[] r = new char[numChar];
    System.arraycopy(s, 0, r, 0, numChar);
    return r;
}
public static String split(String str, int numChar) {
    char[] s = str.toCharArray();
    if (numChar >= str.length()) {
        return String.copyValueOf(s);
    }
    char[] r = new char[numChar];
    System.arraycopy(s, 0, r, 0, numChar);
    return String.copyValueOf(r);
}
或者,如果
结果
字符串
,请尝试以下操作:

public static char[] split(String str, int numChar) {
    char[] s = str.toCharArray();
    if (numChar >= str.length()) {
        return s;
    }
    char[] r = new char[numChar];
    System.arraycopy(s, 0, r, 0, numChar);
    return r;
}
public static String split(String str, int numChar) {
    char[] s = str.toCharArray();
    if (numChar >= str.length()) {
        return String.copyValueOf(s);
    }
    char[] r = new char[numChar];
    System.arraycopy(s, 0, r, 0, numChar);
    return String.copyValueOf(r);
}

请注意,上述两种方法不会更改原始字符串。

您听说过String.split()方法吗?@Rehman是的,但我不太确定在这种情况下如何使用它,我只是用它把一个字符串拆分成一个没有字符限制的数组。发布你的输入和期望的结果output@Rehman我只是想拆分一个字符串,我必须在每行提供x个字符。我如何才能防止它将单词拆分成两半?也许你可以使用subString()调用字符串的一半什么意思?介意举个例子吗?我怎样才能防止它把单词一分为二呢?