题目要求:
连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;
长度不是8整数倍的字符串请在后面补数字0,空字符串不处理
import java.util.*;
public class Main
{
public static void main(String [] Args){
Scanner scanner = new Scanner(System.in);
// 读两行字符串
String str1=scanner.nextLine();
String str2=scanner.nextLine();
// 存储切分后的字符串
ArrayList <String> stringList = new ArrayList<String>();
// 自定义的一个切分字符串的处理方法
ss(stringList,str1);
ss(stringList,str2);
// 末尾补0 是在打印的时候做了一点儿手脚
for(String ss : stringList){
if(ss.length()==8){
System.out.println(ss);
}else{
int sub=8-ss.length();
System.out.print(ss);
for(int i=0;i<sub;i++){
System.out.print('0');
}
System.out.print('\n');
}
}
}
public static void ss(ArrayList <String> str,String str1){
int startIndex=0,endIndex=8;
do{
endIndex=endIndex>str1.length()?str1.length():endIndex;
str.add(str1.substring(startIndex, endIndex));
startIndex=endIndex;
endIndex+=8;
}while(endIndex<=str1.length());
if(startIndex<str1.length()){
str.add(str1.substring(startIndex, str1.length()));
}
}
}