//A.java
import java.util.ArrayList;
public class A {
public static void main(String[] args) {
String str = "he吉llo林yu大r学i";
exec(str,5);
}
public static void exec(String str,int N){
ArrayList<String> result = new ArrayList<String>();
int i = 0; // 字符串定位
int left = N;
int count = 0; // 当前已划分出来的块数
while (i < str.length()) {
if (left - (String.valueOf(str.charAt(i))).getBytes().length >= 0) {
if (result.size() == 0) {
result.add(String.valueOf(str.charAt(i)));
} else {
result.set(count, ((String) result.get(count))+(str.charAt(i)));
}
left -= (String.valueOf(str.charAt(i))).getBytes().length;
i++;
} else {
count++;
result.add("");
left = N;
}
}
for (int a = 0; a < result.size(); a++) {
System.out.println(result.get(a));
}
}
}
运行结果:
he吉l
lo林y
u大r
学i