enum Temp {
VALUE1(Tempclass::getField1)
VLAUE2(Tempclass::getField2)
private final Function<Tempclass, String> type;
}
class Tempclass {
String field1;
String field2;
}
使用上面的代碼,我可以根據值獲取Tempclass欄位的enum值。現在如何設定Tempclass基于enum值的欄位ex: 如果enum VALUE2被選中,那么我需要將 設定Tempclass field2為輸入值。
uj5u.com熱心網友回復:
使用 a和 aBiConsumer<Tempclass, String>的實體TempClass并String在類中設定適當的欄位。
VALUE1(Tempclass::getField1, Tempclass::setField1),
VALUE2(Tempclass::getField2, Tempclass::setField2);
private final BiConsumer<Tempclass, String> setter;
從列舉中獲取 setter 并將值傳遞給acceptBiConsumer的方法。
enumInstance.getSetter().accept(tempClassInstance, "some-value");
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/400905.html
下一篇:更新面板中的資料未保存在資料庫中
