for (GoodsSku sku : skuList) { String[] arr = sku.getSkuAttribute().split(":"); List<Integer> list = new ArrayList<>(); for (int i = 1; i < arr.length; i += 2) { list.add(Integer.parseInt(arr[i])); } }改为计算代码
时间: 2024-03-15 12:47:36 浏览: 143
蓝牙UWB组合模块,精准双向测距,高精度定位模块SKU610_V1.01_datasheet.pdf
这段代码可以改写为:
```
for (GoodsSku sku : skuList) {
String[] arr = sku.getSkuAttribute().split(":");
List<Integer> list = new ArrayList<>();
IntStream.range(1, arr.length)
.filter(i -> i % 2 == 1)
.mapToObj(i -> Integer.parseInt(arr[i]))
.forEach(list::add);
}
```
这里使用了 Java 8 中的 Stream API,更加简洁和易读。`IntStream.range()` 生成一个指定范围的整数流,`filter()` 过滤出奇数下标的元素,`mapToObj()` 将这些元素转换成整数对象,最后使用 `forEach()` 把它们加入到列表中。
阅读全文