在java中实现arraylist的加法和乘法,类似于python中的x+=[i]*i

xghobddn  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(510)

我正在尝试使用arraylist在java中实现以下python代码。但事实证明,在java中比在python中复杂得多。我觉得我的代码应该是一样的,我真的不明白为什么我的java代码不是等价的。

test=10
x=[0, 0]
i=0
while len(x)<test:
    #print([i]*i)
    x+=[i]*i
    #print(x)
    i+=1

具有预期输出:

[0, 0]
[0, 0, 1]
[0, 0, 1, 2, 2]
[0, 0, 1, 2, 2, 3, 3, 3]
[0, 0, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4]

我的java代码实现了上面用python编写的代码:

q8l4jmvw

q8l4jmvw1#

您不需要乘法,因为这是python中复制的缩写。下面是一个简单的java实现:

int test=10;
ArrayList<Integer> ar1 = new ArrayList<Integer>();
ar1.add(0);
ar1.add(0);

int i = 0;
while ( ar1.size() < test)
{
    // implement x+=[i]*i in Java
    int number1 = i;
    for (int j = 0; j < number1; j++)
    {
        ar1.add(i);
    }
    i = i + 1;
    System.out.println(ar1);
}

相关问题