方案一:
import java.util.*;
public class Main{public static void main(String[] args){
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
String str=sc.nextLine();
test(str);
}
}
public static void test(String str){
while(str.length()>=8){
System.out.println(str.substring(0,8));
str=str.substring(8);
}
while(str.length()<8&& str.length()>0){
str+="00000000";
System.out.println(str.substring(0,8));
}
}
}
方案二:
import java.util.*;
public class Main{public static void main(String[] args){
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
String str=sc.nextLine();
//获取字符串长度
int m=str.length();
//假如字符串长度=8,原样输出;小于8,后面补充0
if(m<=8){
int n=8-m;
System.out.print(str);
for(int i=0;i<n;i++){
System.out.print("0");
}
}else{
//字符串长度大于8
int k=m/8;//计算8的倍数
int k1=m%8;//取余
//每次截取8个字符,注意开区间、闭区间
for(int i=0;i<k*8;i++){
String str1=str.substring(i,i+8);
System.out.println(str1);
i+=7;
}
//如果不是8的整数倍,剩余的字符需要补0输出
if(k1 !=0){
//截取8的整数倍后面的字符,8整数倍前面的字符已经输出
String str1=str.substring(k*8);
System.out.print(str1);
int l=8-str1.length();
for(int i=0;i<l;i++){
System.out.print("0");
}
}
}
}
}
}