我有一個運行遊戲服務器的Socket網絡。爲了簡化相互發送數據,我想使用枚舉作爲構造函數的輸入,並使用基於該枚舉值的構建方法。基於枚舉輸入的返回類
例如,我有一個枚舉:
enum DataType {
connectPlayer,
returnServerState;
}
現在我有一個名爲BuildData構造:
private DataType dataType;
public BuildData(DataType dataType) {
this.dataType = dataType;
}
我的問題是:我希望能夠使用的build方法不同基於DataType的輸入。
舉例來說,如果我有數據類型「connectPlayer」,我想構建方法具有以下輸入:
public String build(String UUID, String server) {
return "connectPlayer:" + UUID + ":" + server;
}
然而,當一個數據類型returnServerState,我希望它是這樣的:
public String build(String thisServer, String serverState) {
return "setServerState:" + thisServer + ":" + serverState;
}
冒號放置在中間,所以我可以使用拆分方法。
我的問題是:是否必須根據包含正確方法的枚舉類型返回類實例,還是有更簡單的方法來執行此操作?
謝謝!
也許使用您的DataType作爲您的方法的附加參數。 String build(String s1,String s2,DataType dt)' – CubeJockey
您的build()方法是否總是接受相同類型的參數(例如build(String,String))?也就是說,無論DataType如何,構建方法簽名都是相同的? –
對不起@鋼筆粉絲69,忘了提及。不,它有時會根據枚舉類型接受更多參數,有時更少。 – Indy