在 JavaScript 中,可以按照以下方式做一些事情:var qwerty = (function() { //some code return returnValue;}這會將returnValue分配給qwerty。有沒有辦法在 Java 中做類似的事情?就像是:int num = { public int method() { //some code return val; }}我知道我可以寫出一個單獨的方法,但我想以類似于上面的方式來做,因為它在我正在編寫的代碼中看起來更整潔。
1 回答

慕標琳琳
TA貢獻1830條經驗 獲得超9個贊
因為您function沒有指定任何參數,所以您很可能正在尋找IntSupplier功能接口:
IntSupplier supplier = () -> {
int val = ...;
//some code
return val;
};
int num = supplier.getAsInt();
如果你真的想內聯它,那么你可以使用以下內容(這是不可讀的,所以我不推薦它):
int num = ((IntSupplier) () -> {
int val = ...;
//some code
return val;
}).getAsInt();
因為上面IntSupplier沒有存儲在變量中,所以它在邏輯上等同于以下內容:
int val = ...;
//some code
int num = val;
添加回答
舉報
0/150
提交
取消