題目描述
•連續輸入字符串,請按長度爲8拆分每個字符串後輸出到新的字符串數組;
•長度不是8整數倍的字符串請在後面補數字0,空字符串不處理。
輸出描述:
輸出到長度爲8的新字符串數組
輸入例子:
abc
123456789
輸出例子:
abc00000
12345678
90000000
package 測試包;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s1 = sc.nextLine();
String s2 = sc.nextLine();
sc.close();
fenGe(s1);
fenGe(s2);
}
private static void fenGe(String s) {
int n = s.length();
if (n == 0) {
System.out.println();
return;
}
if (n > 0 && n < 8) {
String temp = "";
for (int i = 1; i <= 8 - n; i++) {
temp = temp + "0";
}
s = s + temp;
System.out.println(s);
}
if (n % 8 == 0 && n >= 8) {
for (int i = 1; i <= n / 8; i++) {
String sub = "";
sub = s.substring(8 * i - 8, 8 * i);
System.out.println(sub);
}
}
if (n % 8 != 0 && n / 8 >= 1) {
String s1 = s.substring(0, (n / 8) * 8);
String s2 = s.substring((n / 8) * 8, n);
fenGe(s1);//遞歸
fenGe(s2);//遞歸
}
}
}
本題要點:
s.subString(0,5)截取的是0-4的字符;
s.subString(5,10)截取的是5-9的字符
package 測試包;
public class Test01 {
public static void main(String[] args) {
String s = "HHHUUTTTOO";
System.out.println(s.substring(0, 5));
System.out.println(s.substring(5, 10));
}
}
HHHUU
TTTOO