题解 | #字符串分隔#

字符串分隔

https://www.nowcoder.com/practice/d9162298cb5a437aad722fccccaae8a7

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        while (sc.hasNext()) {
            String str = sc.nextLine();
            StringBuilder sb = new StringBuilder();//牢记字符串缓冲区的建立语法
            sb.append(str);//字符串缓冲区的加入
            int size = str.length();
            int addZero = 8 - size % 8; //addzero的可能值包括8
            while ((addZero > 0) && (addZero < 8)) { //注意边界调节,避免addzero=8
                sb.append("0");//使用‘’或“”都可
                addZero--;
            }
            String str1 = sb.toString();
            while (str1.length() > 0) {
                System.out.println(str1.substring(0, 8));
                str1 = str1.substring(8);
            }

        }
    }
}
  1. 需要输入字符串,用到Scanner和hasNext()。

(1)建立 Scanner sc = new Scanner(System.in);(2)判断有无输入用sc.hasNext().接收字符串使用sc.nextLine().

  1. 一次性接受全部的字符串,对8取余,获知需要补0的位数。使用StringBuilder中的append()函数进行字符串修改,别忘了toString()。字符串缓冲区的建立:StringBuilder sb = new StringBuilder();
  2. 输出时,截取前8位进行输出,并更新字符串。用到str.substring()函数:(

(1)str.substring(i)意为截取从字符索引第i位到末尾的字符串。(2)str.substring(i,j)意为截取索引第i位到第(j-1)位字符串。包含i,不包含j。

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-08 14:10
点赞 评论 收藏
分享
机械打工仔:有说的你怀疑一下就行了,直接问也太实诚了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务