Pracuję nad projektem, który jest zaimplementowany w Javie 7, a teraz chcę przeprowadzić migrację do języka Java 8. Używam Intellij Idea i znajduję wszystkie "nowe klasy wewnętrznej wystąpienia" odrobina regex znalezienie ("nowy (.) \ s * {[. | \ s] *"), ale są one bardzo liczne! Jak wymusić Intellij, aby zastąpić wszystkie te wewnętrzne klasy?Automatyczne zastępowanie wszystkich anonimowych klasy wewnętrznej lambda w Intellij Idea
Odpowiedz
W menu Analyze
wybierz "Uruchom inspekcję według nazwy ...". W polu wyszukiwania wpisz "Anonimowy" i wybierz ten, który mówi "Klasa anonimowa może zostać zastąpiona przez lambdę" lub coś podobnego. Wybierz swój zakres i rozpocznij analizę.
W wynikach można sprawdzić je pojedynczo i kliknąć link "Zamień na lambdę" po prawej stronie, aby dokonać zmiany, lub, jeśli jesteś odważny, możesz kliknąć prawym przyciskiem myszy węzeł na górze wyników i wybierz "Zastosuj poprawkę", aby zaktualizować je wszystkie.
w moim przypadku 'Klasa anonimowa może być zastąpiona przez lambda' nie znaleziono, ale zamiast tego 'Typ anonimowy można zastąpić lambda' – HendraWD
Nie wszystkie anonimowe klasy mogą być reprezentowane jako lambdy. – bcsb1001
Ok. Co powiesz na niektóre z nich, które można reprezentować? –
Nie sądzę, że taka funkcja jest dostępna po wyjęciu z pudełka. Może jakiś plugin – Blitzkr1eg