问答详情
源自:2-6 Java 中的 StringBuilder 类的常用方法

这个循环为啥出来的不一样啊

public class HelloWorld {

    public static void main(String[] args) {

// 创建一个空的StringBuilder对象

StringBuilder str = new StringBuilder();

        

// 追加字符串

str.append("jaewkjldfxmopzdm");

        // 从后往前每隔三位插入逗号

        for(int i=1;i<=5;i++){

str.insert((str.length()-(i*3)),",");

        }

        

        // 将StringBuilder对象转换为String对象并输出

System.out.print(str.toString());

}

}

jaewk,ji,df,xm,op,zdm



提问者:莫志伟 2018-10-17 22:07

个回答

  • 魈小混球
    2018-10-17 22:17:28

    插入之后 长度增加,减去的应该是三个字母和逗号的长度,这么写不严谨 i的取值范围得首先计算一下吧!!!

    用倒叙的方法 sb.length 每次减去三

  • 魈小混球
    2018-10-17 22:13:20

    //创建一个StringBuilder

    StringBuilder sb = new StringBuilder();

    sb.append("jaewkjldfxmopzdm");

    for(int i =0;i<=5;i++) {

    sb.insert(sb.length()-(i*4), ",");

    }

    System.out.println(sb.toString());