具体代码:
import java.util.Arrays;
public class demo1 {
public static String[] function(String s,int i) {
//向上确整,确定数组长度,比如长度5,切割值2,结果就是3
int j = (int) Math.ceil(s.length() * 1.0 / i);
String finalArray[] = new String[j];
int k = s.length() / i;
int a = 0;
//j>k意味字符串无法平均分割,最后一位元素需要单独赋值
if (j > k) {
for (a = 0; a < k; a++) {
finalArray[a] = s.substring(a * i, a * i + i);
}
finalArray[k] = s.substring(i * k);
return finalArray;
} else {
//可以平均分割,循环赋值
for (a = 0; a < k; a++) {
finalArray[a] = s.substring(a * i, a * i + i);
}
return finalArray;
}
}
public static void main(String[] args) {
String s = "一二三四五";
int i = 2;
//排除以下情况:字符串长度为1,切割值<1,字符串长度小于切割值
if (s.length() == 1 || i < 1 || s.length() < i) {
System.out.println("你这字符串或者切割值不满足要求呀,请检查下");
}else{
System.out.println(Arrays.toString(function(s,i)));
}
}
}