ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 数组元素修改 传递给 **Arrays.setAll()** 的生成器函数可以使用它接收到的数组索引修改现有的数组元素: ```JAVA // arrays/ModifyExisting.java import java.util.*; import onjava.*; import static onjava.ArrayShow.*; public class ModifyExisting { public static void main(String[] args) { double[] da = new double[7]; Arrays.setAll(da, new Rand.Double()::get); show(da); Arrays.setAll(da, n -> da[n] / 100); // [1] show(da); } } /* Output: [4.83, 2.89, 2.9, 1.97, 3.01, 0.18, 0.99] [0.0483, 0.028900000000000002, 0.028999999999999998, 0.0197, 0.0301, 0.0018, 0.009899999999999999] */ ``` [1] Lambdas在这里特别有用,因为数组总是在lambda表达式的范围内。