public static class DataBean {
private int value;
private BigDecimal name;}
public class ChartData {
private Integer time;
private BigDecimal result;}
我需要類似如下的操作,
List<ChartData> data = getdata();
List<SeriesBean.DataBean> yValue = data.stream().map(item -> (SeriesBean.DataBean) item);
報錯不可轉換的型別,DataBean是個內部靜態類別。
C 裡面有reinterpret_cast可以強轉,java應該有對應的方法的
Apache Commons 的
都有提供BeanUtils
和 Spring 的BeanUtils
都有提供copyProperties
和Spring 的copyProperties
方法,作用是將一個對象的屬性的值賦值給另外一個對象,但前提是兩個對象的屬性類型且名字
BeanUtils
相同。例如使用 Apache Commons 的 :
ChartData
和DataBean
所以如果
的屬性名稱一致,你的程式碼可以這樣寫(就不用挨個屬性的寫 setter 方法了):🎜 🎜當然,要注意的一點是,這是使用反射實現的,效率要比直接寫 setter 方法要低一些。 🎜雷雷
強轉只能父類轉子類,你這就老實點一個個字段set過去就好了
樓主學習一下 Java 的型別轉換啊。這種條件下,不能強轉的。