怎么从list中取出某个字段放到List<BigDecimal>中
时间: 2024-04-21 08:22:28 浏览: 122
如果你有一个包含对象的List,并且想要从这些对象中提取某个字段的值,然后将这些值放入一个新的List<BigDecimal>中,你可以使用循环遍历原始的List,并使用对象的getter方法获取字段的值,并将其转换为BigDecimal类型后添加到新的List中。以下是一个示例代码:
```java
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
public class ExtractFieldToBigDecimal {
public static void main(String[] args) {
List<MyObject> originalList = List.of(
new MyObject("Value 1", new BigDecimal("1.23")),
new MyObject("Value 2", new BigDecimal("4.56")),
new MyObject("Value 3", new BigDecimal("7.89"))
);
List<BigDecimal> fieldList = new ArrayList<>();
for (MyObject obj : originalList) {
fieldList.add(obj.getBigDecimalField());
}
System.out.println("BigDecimal Field List: " + fieldList);
}
static class MyObject {
private String stringField;
private BigDecimal bigDecimalField;
public MyObject(String stringField, BigDecimal bigDecimalField) {
this.stringField = stringField;
this.bigDecimalField = bigDecimalField;
}
public BigDecimal getBigDecimalField() {
return bigDecimalField;
}
}
}
```
在上面的示例中,我们创建了一个包含MyObject对象的列表`originalList`,每个对象包含一个字符串字段和一个BigDecimal字段。然后,我们创建了一个空的List<BigDecimal> `fieldList`,用于存放提取出的BigDecimal字段值。
在循环遍历原始列表时,我们使用对象的`getBigDecimalField()`方法获取BigDecimal字段的值,并将其添加到新的List中。
最后,我们打印出新的List `fieldList`,其中只包含了BigDecimal字段值。
请根据你的实际情况调整代码,并使用适当的字段和getter方法。
阅读全文