java8list有多条数据,每条数据中都有一个属性对应在一个枚举类型里面,现在根据枚举类型里面设置的优先级方法,输出list中优先级最高的那条数据,代码实现
时间: 2024-03-05 13:49:59 浏览: 117
假设枚举类型为`Priority`,每条数据对应的类为`Data`,`Data`中有一个方法`getPriority()`返回对应的`Priority`值。那么可以按照以下步骤实现输出优先级最高的数据:
1. 定义一个变量`highestPriority`,初始值为枚举类型中的一个最低优先级。
2. 遍历`java8list`中的每个`Data`对象,对于每个对象,比较其`getPriority()`方法返回的`Priority`值与`highestPriority`的优先级,如果更高,则将`highestPriority`更新为该对象的`Priority`值。
3. 遍历完`java8list`后,再次遍历每个`Data`对象,对于每个对象,判断其`getPriority()`方法返回的`Priority`值是否等于`highestPriority`,如果是,则输出该对象的信息。
代码示例如下:
```java
Priority highestPriority = Priority.LOWEST;
Data highestPriorityData = null;
for (Data data : java8list) {
if (data.getPriority().getPriorityValue() > highestPriority.getPriorityValue()) {
highestPriority = data.getPriority();
}
}
for (Data data : java8list) {
if (data.getPriority() == highestPriority) {
highestPriorityData = data;
break;
}
}
System.out.println("Highest priority data: " + highestPriorityData);
```
其中,`Priority`中的`getPriorityValue()`方法返回一个`int`值,表示该优先级的大小,可以用于比较优先级大小。`Data`类中可以根据需要添加其他方法和属性。
阅读全文