首页 > 代码库 > 华为机试在线训练(4)
华为机试在线训练(4)
华为机试在线训练:字符串分隔
题目描述
?连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;
?长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
输入描述:
连续输入字符串(输入2次,每个字符串长度小于100)
输出描述:
输出到长度为8的新字符串数组
输入例子:
abc
123456789
输出例子:
abc00000
12345678
90000000
代码:
1 import java.util.Arrays; 2 import java.util.Scanner; 3 4 public class Main{ 5 public static void main(String[] args) { 6 Scanner sc = new Scanner(System.in); 7 String[] str = new String[100]; 8 int n = 0; 9 10 while(sc.hasNext()){ 11 String tmp = sc.nextLine(); 12 str[n] = completeStr(tmp); 13 n++; 14 } 15 for(int i = 0; i < n; i++){ 16 printStr(str[i]); 17 } 18 } 19 //字符串填充成8*n长度 20 static String completeStr(String str){ 21 int len = str.length(); 22 int modNum = len % 8; 23 if(modNum != 0){ 24 char[] ch = new char[8 - modNum]; 25 Arrays.fill(ch, ‘0‘); 26 String strCat = new String(ch); 27 str = str.concat(strCat); 28 } 29 return str; 30 } 31 //分段打印 32 static void printStr(String str){ 33 int len = str.length(); 34 int num = len/ 8; 35 for(int i =1; i <= num; i++){ 36 String tmp = str.substring((i - 1)*8, i*8 ); 37 System.out.println(tmp); 38 } 39 } 40 }
华为机试在线训练(4)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。