我在這裏看到過多次類似的問題,但有一個很大的區別。Java方法中的動態返回類型
在其他問題中,返回類型由參數決定。我想要/需要做的是通過解析的0的值來確定返回類型。從我收集的,下面可以工作:
public Comparable getParam(String param, byte[] data) {
if(param.equals("some boolean variable")
return data[0] != 0;
else(param.equals("some float variable") {
//create a new float, f, from some 4 bytes in data
return f;
}
return null;
}
我只是想肯定這之前,我擰任何行動工作的機會。提前致謝。
您**不能**從帶有簽名的方法返回'float'或'boolean'',表示它返回'Comparable'(這真的應該是'Comparable >順便說一下)。你只能返回Float或Boolean等。 –
對於我的情況來說,一個更好的問題可能是「是否有方法來轉換返回類型,以便可以調用該方法而不必將其轉換爲變量?」 – Jon
不在純Java中。 (IIRC,它可以在Java字節碼中完成,但我可能會對MSIL感到困惑)。 –