In every keyword I specified how often I use that keyword.
Actions
alt + enter - show window with many useful features. You can press it on any line (class, import, variable, string etc). For example if you press it on regex, you have Check Regex option. For variable you have introduce variable etc. Often
ctrl + shift+a - find action (shortcut). For example you want to format code but you don't remember shortcut. Sometimes
ctrl + f - find text. Often
ctrl + r - replace text. Often
alt+insert - add getters/setters/contructors. Also works in file window to add new file. Often
Navigation
ctrl + n - goto class. You can also specify line number e.g. Main:100. Often
ctrl + shift + n - similar to above but goto file. Often
ctrl + alt + shift + n - similar to above but goto symbol e.g. method. Often
shift + shift - search everywhere (classes, files, symbols. shortcuts etc). Sometimes
Usages
alt+f7 - show usages of selected symbol in entire project (method, variable, class etc) in new tab. Often
ctrl+f7 - like above but only for current file. Rare
ctrl + alt + f7 - like alt + f7, but show results in new popup. Rare
ctrl+shift+f7 - highlights current word in entire file. Press escape to cancel. What is interesting is that it works also for return, throws, extend and then it shows places where we return values or throws exceptions. Sometimes
ctrl+alt+h - call hierarchy (both directions). Press it on method. We can use it instead of using alt+f7 on each symbol. Sometimes
ctrl + h - class hierarchy. Useful also if we want to check hierarchy of any Java class (open it first with ctrl+n). Sometimes
Ctrl + Alt + B - goto implementation of method (goto class that implements interface instead of interface). Press it on method. Rare
Ctrl + U - go to super-method/super-class/interface.
For example for class FileImageInputStream extends ImageInputStreamImpl
it opens ImageInputStreamImpl. Rare
ctrl+[ or ctrl+] - go to beginning/end of block (goto to first { or }). Rare
ctrl+shift+t - goto unit tests. Also shows option to create new test. Rare
ctrl+shift+backspace- move cursor to last change position. Rare
ctrl + shift + f - search text in all files. Often
git/svn
ctrl + k -commit.Often
ctrl + t - update. Often
Alt + ` - popup with many useful features for git/svn like revert or show annotations. Often
collapse/expand
ctrl . - collapse selected block. Rare
ctrl -/+ - collapse/expand current method. Rare
ctrl + shift -+ - collapse/expand all methods. Rare
intelisense
ctrl + space - show intelisense. Press many times to show symbols from not imported or external classes. Press tab if you want to overwrite symbol or ! to add negation. Often
alt+/ - finish word. For example type str and press alt + / and will change to method name or any other words that you have in current file for example string. You can press it many times. Rare
ctrl + shift + space - intelligent intelisense that shows only variable/methods that return correct type e.g. string. Press once again to look deeper. Sometimes
ctrl + shift + enter - closes block or statement e.g.
if (true == true -> if (true ==) { }
int a -> int a;
Also works in intelisense. Often
shift+enter - works like enter but doesn't break current line. Sometimes
alt + q - show declaration of class/method, something like "where we are". It can be useful if we have long method and we don't see beginning . Rare
bookmarks
f11 - add anonymous bookmark. Often
ctrl+shift+number (0-9) - add numeric bookmark. Sometimes
ctrl+number (0-9) - go to numeric bookmark. Sometimes
ctrl + f11 - add numeric or letter bookmark. You can press number or letter. Rare
shift+f11 - show all bookmarks. You can press number or letter to go to specified bookmark. Sometimes
alt+shift+f - add to favorites. Rare
alt-2 - show favorites. Rare
refactoring
Ctrl + alt + v – introduce variable. Input any expression e.g. new YourClass() and then press this shortcut. It will generate name and type of this variable. e.g.
YourClass yourClass = new YourClass()
Often
ctrl+alt+shift+t - refactor this. Rare
debug
Alt + F8 – evaluate expression. Sometimes
Ctrl + alt + F8 - like Alt + F8 but shows immediately result of current expression. Press it on e.g. on variable. Sometimes
shift + f7 -intelligent smart into. It shows window where you want to jump. Useful if you want to omit getters/setters or constructors. Sometimes
windows
Alt + shift + c - recent changes. Rare
alt + number- show window that are on the bottom e.g. alt + 6 - changes. Rare
ctrl+f12 - structure window (methods and variables in current files). Works for many file types e.g. js, css. .Sometimes
ctrl+alt+f12 or ctrl + left mouse - shows file path of current file. Useful for jumping to explorer. Sometimes
f12 - opens last opened window. Rare
escape - focuses main window. Rare
shift+escape - hides selected window. Rare
alt + f1 - where do you want to open current file e.g. select file in structure window or open it in explorer. Rare
Ctrl+Shift+V - multi clipboard. Rare (I have external application to do that)
ctrl + e -recent files. Rare
ctrl + shift+e - recent edited files. Rare
alt+home - jumps to top file path. Rare
other
ctrl + d - duplicate line. Often
ctrl + y - remove line. Often
ctrl + j live templates for example for each. You can also type shortcut e.g. iter an press tab to create for each. Often (shortcuts like iter, fori)
ctrl + alt +t - surround with e.g. selected text with etry/catch. Sometimes
ctrl+shift+enter - finish expression by adding {}; e.g. type if and press shortcut. Often
ctrl + q or alt + middle mouse, press it on type or in intelisense to see documentation. Often
Ctrl+shift+I - you can see content of file in popup. Also works on intelisense or in navigation list like goto class/file. Sometimes
shift+f5 - clone class. Sometimes
shift+f6 - rename class/variable. Often
alt+mouse- block selection. Useful to edit many lines at once. Rare
alt+shift - add multi cursor. Rare
Useful to edit many lines at once
Ctrl + Shift + Up/Down - smart move line or block up or down. You can move entire method or block like if. Sometimes
alt+shift+down/up - not smart move line up or down. Sometimes
f2 / shift+f2 - show next/previous warning in intelij. Rare
alt+shift+i - run default inspection. Sometimes
ctrl+shift+delete - delete external block. Useful if you want for example to delete if. Sometimes