2016-01-19 66 views
5

如何在一行lambda中設置斷點?單/一行lambda中的Eclipse斷點?

例如當調用outer.doSth(event)時,我希望(eclipse)調試器暫停:

observable.addCallback(event-> outer.doSth(event)); 
+0

不幸的是,沒有格式化就無法做到 – Sossenbinder

+2

另一種方法是在'doSth'方法中放置斷點。 –

+2

那麼,你可以在包含lambda表達式的行上設置一個斷點,但必須在兩個點都停止執行,在調用'addCallback'之前和調用'doSth'之前。這與任何其他嵌套表達式沒有區別。如果你想區分,插入換行符... – Holger

回答

4

你不能。

如果你重構它是這樣的:

observable.addCallback(event-> { 
    return outer.doSth(event); 
}); 

即可。

+3

沒有必要將lambda表達式轉換爲詳細語法。如果你在' - >'之後插入換行符,它也可以使用'event-> outer.doSth(event)'。 – Holger

0

那麼這個答案是不是日食,但在intellij你可以(15.x版)

enter image description here

你有一個選項,設置在該行一個破發點是(這是第一個選項在圖像中),或者在第一個lambda或第二個。等等。