簡體   English   中英

將Intellida表達式替換為IntelliJ IDEA中的等效代碼

[英]Replace lambda expression with equivalent code in IntelliJ IDEA

我可以使用IntelliJ IDEA重構用等效表達式替換lambda表達式。 謝謝。

public class StateOwner {
    public void addStateListener(StateChangeListener listener) { ... }
}

..
StateOwner stateOwner = new StateOwner();

stateOwner.addStateListener(
    (oldState, newState) -> System.out.println("State changed")
);

我可以使用IntelliJ IDEA替換lambda表達式部分

stateOwner.addStateListener(new StateChangeListener() {

    public void onStateChange(State oldState, State newState) {
        System.out.println("State changed")
    }
});

這取決於您的熱鍵設置。 但是如果使用默認值,你可以在lambda narrow或lamdba參數上嘗試使用前導光標,然后按alt + Enter ,然后選擇“用匿名類替換lambda”

它提供的方式與將代碼轉換為lambda的方式相同。 確保你有一個相當晚的版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM