华为基础训练---字符串分割

来源:互联网 发布:linux命令手册下载chm 编辑:程序博客网 时间:2024/05/21 17:17

题目描述
•连续输入字符串,请按长度为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

0 0
原创粉丝点击