Який ярлик в IntelliJ IDEA для пошуку методу / функцій?


332

Я знаю, що Ctrl+ N- це знайти заняття, і це дуже корисно. А як щодо методів?



Це схоже, але це не зовсім однакова функція. (?)
Феліпе

2
Для мене це Alt-Cmd-O, виберіть пункт меню Навігація-> Символ. Поруч із ним можна побачити ярлик.
n0rm1e

Відповіді:


288

Windows: ctrl+F12

MacOS: cmd+F12

Вище наведені команди покажуть функції / методи в поточному класі .

Натисніть SHIFTДВА рази, якщо ви хочете шукати і клас, і метод у всьому проекті.


142
Якщо ви наберете "sudo grep something /", ви також можете знайти що завгодно, на всьому своєму комп’ютері :)
olafure

11
@olafure, так можна. "sudo grep something /" шукатиме на всьому комп’ютері і дасть багато непотрібних результатів, і це займе багато зайвого часу. Отже, краще шукати щось лише в IDE.
Вікас Гупта

44
Я вважаю, що це його суть ... Коли шукати методи, що використовують параметр, який навіть знайде текстові результати у файлах поза проектом, трохи важко.
Джош Ганьон

11
Хоча ця відповідь технічно правильна, я цього намагаюся уникати, оскільки я не хочу шукати декілька файлів, які можуть мати однакову назву методу. Метод Ctrl + F12, наведений нижче, як і в 3 рази більше оновлень, - це те, що слід позначити як правильну відповідь ...
dudewad

1
яка різниця між цим і Ctrl + Alt + Shift + N?
Mahesha999

754

ctrl+ F12( cmd+ F12на macOS) покаже всіх членів поточного класу у спливаючому вікні та дозволить вам вибрати його. Він працює точно як ярлик ctrl+ oу затемненні, набагато швидше, ніж ctrl+ alt+ shift+n


67
Cmnd f12 на mac. Я думаю, що це краща відповідь.
TJ Seabrooks

8
Cmnd + ALT + O також дуже корисний для Mac, щоб знайти символи.
Феліпе

3
Як називається дія, щоб показати всіх учасників поточного класу?
sealskej

1
Насправді в Eclipse це Ctrl + O (Швидкий контур). Ctrl + Shift + O призначений для організації імпорту.
Гійом Хуста

8
@sealskej це називається "Структура файлу" в налаштуваннях клавіатури.
shanwu

102

Ctrl+ Alt+ Shift+ Nдозволяє шукати символи, включаючи методи.

Основна перевага цього більш складного нав'язування клавіш полягає в тому, що це пошук у всіх файлах, а не лише у поточному файлі, як у Ctrl+ F12.

(І , як завжди, для Mac ви замінюєте Cmdдля Ctrlцих прив'язок.)


Дуже дякую! І як я можу знайти цей варіант у меню?
Феліпе

Я знайшов це! Він знаходиться в меню "Перейти". Легко!
Феліпе

1
Не працює для мене на mac. Хоча CMD + F12 працює. Спасибі
Ajak6

Ctrl + F12 добре працював для мене. Intelli IDEA J 2018.2
minhas23

16

Android Studio на Mac

Command+ Option+O

Відкриває пошук Symbol, який дозволяє перейти до більшості методів / функцій у вашому відкритому документі.


Результати, показані за допомогою цієї комбінації клавіш, не обмежуються лише відкритим документом. Для цього cmnd + f12 - це те, що ви хочете (відповідно до відповіді Деніела Данга та коментаря Томаса).
hBrent

1
Для повної ясності, що саме таке визначення "Symbol" з точки зору Android Studio?
Пінкертон

@ImpalaTamer Добре запитання. Я використовую його для переходу до методів, функцій та визначень здебільшого, але, схоже, це може принести більше, ніж це.
Джошуа Пінтер

14

Intellij IDEA 2017.3.4 - 2018.2 (Ultimate) на OSX

CMD+ fn+F12

покаже всіх членів поточного класу у спливаючому вікні, тоді ви можете шукати спосіб пошуку в цьому класі.

Але ця відповідь залежить від налаштування клавіатури. Якщо налаштування клавіатури в

Налаштування системи > Клавіатура > Використовуйте всі клавіші F1, F2 тощо як стандартні функціональні клавіші

вибирається, тоді ярлик стає

CMD + F12


Я думаю, що це має бути правильна відповідь, оскільки він потрапляє лише до вікна методів, де за допомогою наступних ярликів ми також можемо бачити успадковані, анонімні та лямбда. Потужний і крутий! Спасибі
Imam Bux

11

CTRL+ F12відкриває навігаційне меню «Структура файлів», яке дозволяє шукати членів відкритого файлу.


7

IntelliJ IDEA Версія 12.13 Ultimate Edition:

Маки: command+ option+ shift+ N або в меню -> Навігація> Символ ...


2
Не працював для мене цей варіант. Тут у Mac є команда + варіант + O
Felipe

1
Це залежить від вибраної вами клавіші в меню "Налаштування-> Клавіатура". здається, ви вибрали "Mac OS X
10.5+

7

Трохи поруч із актуальним питанням, але, тим не менш, корисним: у меню довідки Intellij є опція "Довідкова клавішна карта за замовчуванням", яка відкриває PDF з повним відображенням. ( Ctrl+ F12там згадується)


6

Якщо ви просто хочете шукати методи:

Для прив’язки mac OS X 10.5+, це Alt+ +O

За замовчуванням прив’язка клавіш XWin - це Shift+ Ctrl+ Alt+N

Ви також можете натиснути подвійно, SHIFTтоді ви можете шукати що завгодно (не лише метод, а й клас, файли та дії)


Я видалив URL-адресу підручника. Не включайте URL-адреси, які можна вважати спамом.
Тушар

3

Варто додати, що якщо ви хочете шукати метод класу, ви можете використовувати .(крапку) між класом та назвою методу всередині діалогового вікна пошуку скрізь або символів пошуку. Це навіть працює із звичайними пошуковими перевагами IDEA. Наприклад, ви можете шукати LDT.nowі LocalDateTime::nowяк результат з’являться. (Поки ви шукаєте Усі файли, а не лише Файли проекту).

введіть тут опис зображення


3

Якщо натиснути метод, ви можете зробити Ctrl+, Bщоб перейти до декларації цього методу. Подібно до F12MS Visual Studio.


2

Якщо мені потрібно перейти до методу в поточно відкритому класі, я використовую цю комбінацію: ALT+ 7( CMD+ 7на Mac), щоб відкрити перегляд структури, і натисніть два рази (перший раз відкритий, другий фокус на перегляді), введіть назву методів, виберіть на потрібних.


1

Для пошуку побудови дій у IDEA (reindent, create new, ...) ви можете використовувати

CRTL+ SHIFT+A

потім введіть відступ, наприклад, ENTER.




0

Я спробував SHIFT+ SHIFTі ALT+ CMD+O

Але я думаю, що найпотужніша та проста у використанні функція - це знайти у всіх файлах CMD+ SHIFT+ F.

Виберіть регулярний вираз і запишіть, .*partOfMethodName.*\(і він показує всі місця і зможе побачити фактичний вихідний код на місці, не переходячи до цього конкретного файлу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.