-2

以下代码示例是创建两个随机值,还是重复使用第一个?

Random r = new Random();
int[] a = new int[10];

a[r.nextInt(10)] += 1;

// Equals this, creating two random values:
a[r.nextInt(10)] = a[r.nextInt(10)] + 1;

// Or this, using 6 as the result of the first random operation
a[6] = 6 + 1;

编辑:当我们这样做的时候,这个操作符(和其他像-=,/=等)有名字吗?

4

1 回答 1

1

当您编写a[r.nextInt(10)] += 1;时,只会生成一个随机数。因此,如果这个随机数恰好是6这等价于a[6] = a[6] + 1;(但效率稍高)。

这个操作符(以及其他像 -=、/= 等)有名字吗?

它们被称为快捷赋值运算符。

于 2013-02-18T18:20:48.350 回答