Java 数组列表和循环

Java 数组列表和循环,java,loops,arraylist,Java,Loops,Arraylist,在循环中执行此操作。一个解决方案是获取gradeN的值。在每个循环上获取(0),并将*附加到它 i、 e: 演示: 您的代码中有两个错误: while循环中递增的变量与条件中使用的变量不同 Strings是不可变的。返回不同的字符串对象,并且不修改原始字符串。这意味着列表中的值不会被修改。要解决此问题,请使用将列表中的旧值替换为新值 one***** int num2=0; 而(num2

在循环中执行此操作。

一个解决方案是获取
gradeN的值。在每个循环上获取(0)
,并将
*
附加到它

i、 e:


演示:


您的代码中有两个错误:

  • while循环中递增的变量与条件中使用的变量不同

  • String
    s是不可变的。返回不同的字符串
    对象,并且不修改原始
    字符串
    。这意味着
    列表中的值不会被修改。要解决此问题,请使用将列表中的旧值替换为新值

    one*****
    
    int num2=0;
    而(num2<5){
    字符串newValue=gradeN.get(0.concat(“*”);
    等级设置(0,新值);
    num2++;
    }
    

  • 你的问题有点不清楚。您是否总是希望在字符串中添加5颗星?如果是这样的话,一个包含5颗星的常量字符串比一个循环更有意义。我想你真的想对
    gradeN
    的每个元素都这样做?比如说:

    ArrayList<String> gradeN = new ArrayList<String>();
    gradeN.add("one");
    gradeN.add("two");
    int num2 = 0;
    while (num<5){
        gradeN.get(0).concat("*");
        num2++;
    }
    System.out.println(gradeN.get(0));
    
    int num2 = 0;
    while (num2 < 5) {
        String newValue = gradeN.get(0).concat("*");
        gradeN.set(0, newValue);
        num2++;
    }
    
    ArrayList gradeN=new ArrayList();
    第n级添加(“一”);
    第n级添加(“两”);
    对于(int i=0;i
    如果添加的星数可能不同,并且您确实希望将它们附加到循环中,那么您可以使用StringBuilder来构建它:

    ArrayList<String> gradeN = new ArrayList<String>();
    gradeN.add("one");
    gradeN.add("two");
    
    for (int i = 0; i < gradeN.size(); i++) {
        gradeN.set(i, gradeN.get(i) + "*****");
        System.out.println(gradeN.get(i));
    }
    
    ArrayList gradeN=new ArrayList();
    第n级添加(“一”);
    第n级添加(“两”);
    int num=5;
    对于(int i=0;i
    您能发布您的预期输出吗?请参阅上的指南。
    int num2 = 0;
    while (num2 < 5) {
        String newValue = gradeN.get(0).concat("*");
        gradeN.set(0, newValue);
        num2++;
    }
    
    ArrayList<String> gradeN = new ArrayList<String>();
    gradeN.add("one");
    gradeN.add("two");
    
    for (int i = 0; i < gradeN.size(); i++) {
        gradeN.set(i, gradeN.get(i) + "*****");
        System.out.println(gradeN.get(i));
    }
    
    ArrayList<String> gradeN = new ArrayList<String>();
    gradeN.add("one");
    gradeN.add("two");
    
    int num = 5;
    
    for (int i = 0; i < gradeN.size(); i++) {
        StringBuilder stars = new StringBuilder(gradeN.get(i));
        for (int j = 0; j < num; j++) {
            stars.append('*');
        } 
        gradeN.set(i, stars.toString());
        System.out.println(gradeN.get(i));
    }