将字符串按拆分输出

来源:互联网 发布:自己朗读软件 编辑:程序博客网 时间:2024/05/16 11:48
package Day28;import java.util.*;/*连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组; 长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。 输入描述: 连续输入字符串(输入2次,每个字符串长度小于100) 输出描述: 输出到长度为8的新字符串数组*/
//程序分析:将不是8整数位补0;然后按照每行8为输出public class Test2 {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc = new Scanner(System.in);String str1 = sc.nextLine();String str2 = sc.nextLine();char[] ch1 = str1.toCharArray();char[] ch2 = str2.toCharArray();char[] ch3 = new char[(ch1.length + (8 - (ch1.length % 8)))];char[] ch4 = new char[(ch2.length + (8 - (ch2.length % 8)))];Test2 test2 = new Test2();test2.fun(ch1, ch3);        System.out.println();Test2 test3 = new Test2();test3.fun(ch2, ch4);}public static void fun(char ch1[],char ch3[]){if (ch1.length % 8 != 0)// 将不足8的整数位的补零{for (int j = 0; j < ch1.length; j++) {ch3[j] = ch1[j];}for (int i = ch1.length; i < (ch1.length + (8 - (ch1.length % 8))); i++) {ch3[i] = '0';}//每行8位输出for (int i = 0; i < ch3.length; i++) {if (i != 0 && i % 8 == 0) {System.out.println();}System.out.print(ch3[i]);}}else{for (int j = 0; j < ch1.length; j++) {ch3[j] = ch1[j];}for (int i = 0; i < ch3.length-8; i++) {if (i != 0 && i % 8 == 0) {System.out.println();}System.out.print(ch3[i]);}System.out.println();}}}
//大神做的很牛代码
package Day28;import java.util.*;public class Test{    public static void main(String[] args){        Scanner sc = new Scanner(System.in);        while(sc.hasNext()){                     String s = new String(sc.nextLine());            if(s.length()%8 !=0 )                s = s + "00000000";                         while(s.length()>=8){                System.out.println(s.substring(0, 8));                s = s.substring(8);            }        }    }}

阅读全文
0 0
原创粉丝点击