ListHealthDevicePicResult healthDevicePicResults = healthDevicePicResultServicegetAllPicByBarcodebarcode;如何去除healthDevicePicResults里身高相同体重也相同的数据
你可以使用Java的Stream API和Lambda表达式来实现这个功能。首先,你可以使用distinct方法来去除重复的元素,然后可以使用filter方法来筛选出身高和体重不相同的数据。
以下是一个示例代码:
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
List<HealthDevicePicResult> filteredResults = healthDevicePicResults.stream()
.distinct()
.filter(result1 -> healthDevicePicResults.stream()
.noneMatch(result2 -> !Objects.equals(result1, result2) &&
result1.getHeight() == result2.getHeight() &&
result1.getWeight() == result2.getWeight()))
.collect(Collectors.toList());
上述代码中,我们首先使用distinct方法去除重复的元素。然后使用filter方法来过滤掉身高和体重相同的数据。在filter方法中,我们使用noneMatch方法来判断是否存在与当前元素身高和体重相同但不同于当前元素的元素。如果不存在这样的元素,则保留当前元素。
最后,我们使用collect方法将过滤后的结果收集到一个新的列表中,并将其赋值给filteredResults变量
原文地址: https://www.cveoy.top/t/topic/izzk 著作权归作者所有。请勿转载和采集!