为了账号安全,请及时绑定邮箱和手机立即绑定

求助各位大神 这个错哪里了

public class HelloWorld {

    public static void main(String[] args) {

// 创建一个空的StringBuilder对象

StringBuilder str=new StringBuilder();

        

// 追加字符串

str.append("jaewkjldfxmopzdm");

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

        int i=str.length();

        do{

            i=i-3;

            str.insert(i,',');

            

        }

        while (1>0);

        

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

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

}

}


正在回答

7 回答

判断条件改为 i>3 即可!否则报错

1 回复 有任何疑惑可以回复我~

执行str.insert()方法之后,再改变 i 的值,

str.insert();

i -=3;

i -=3 不能在insert方法之前

0 回复 有任何疑惑可以回复我~
// 创建一个空的StringBuilder对象
StringBuilder str = new StringBuilder();
// 追加字符串
str.append("jaewkjldfxmopzdm");
// 从后往前每隔三位插入逗号
int i = str.length();
while (i > 1) {
    i--;
    if (i % 3 == 0) {
        str.insert(i-2, ",");
    }
}
// 将StringBuilder对象转换为String对象并输出
System.out.println(str.toString());


0 回复 有任何疑惑可以回复我~

你不能用do while循环,因为当i等于1的时候他还会在执行一次1-3=-2;因为str中没有负2的的位置所以出现异常,运行时报错,你应该使用先判断在循环的语句执行。


0 回复 有任何疑惑可以回复我~
public static void main(String[] args) {
    StringBuilder str = new StringBuilder();
    str.append("jaewkjldfxmopzdm");
    int i = str.length()-3;
    while(i>=0){
        str.insert(i, ',');
        i = i - 3;

    }
    System.out.println(str.toString());
}


0 回复 有任何疑惑可以回复我~

i = i - 3;

if (i > 0)

    str.insert(i, ',');

最后一遍的i已经小于0了,但你还是强行插入

0 回复 有任何疑惑可以回复我~

public class HelloWorld {

    public static void main(String[] args) {

// 创建一个空的StringBuilder对象

StringBuilder str=new StringBuilder();

        

// 追加字符串

str.append("jaewkjldfxmopzdm");


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


        int i=str.length();

        do{

            i=i-3;

            str.insert(i,',');

            

        }

        while (i>0);

        


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

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


}

}


0 回复 有任何疑惑可以回复我~
#1

慕无忌6063789 提问者

我复制了你的,还是不行啊。。。
2020-01-20 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409779    人
  • 解答问题       4339    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

求助各位大神 这个错哪里了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信