The IDE helps you write new code by auto-completing statements for you. Ctrl+Shift+Space gives you a list of the most relevant symbols applicable in the current context. When you choose a suggestion, it adds corresponding package import statements on the fly.
Inspections & quick-fixes
The IDE provides built-in inspections that check your code on the fly as you type it. When they find problematic code, they provide you with quick-fixes which you can apply simply by pressing Alt+Enter.
The available refactorings include Rename and Extract, allowing you quickly and safely change your code.
It only takes one click to switch to a super method, implementation, usages, declaration, and more. Jump to any class, file or symbol, or even any IDE action or tool window in one click.
When you need more information about a symbol at the caret, use quick popups: e.g. Quick Documentation, Quick Definition, Show usages, Structure, etc.
Some popups are available even when you use code completion: they provide additional information about selected suggestion.
In some cases the IDE can generate trivial code for you. For example, if you click Ctrl+O, the IDE will help you implement any interface by generating its methods.
Detecting recursive calls
If you have a recursive call inside your function, the IDE will detect it and mark it on the gutter, making your code even easier to read and understand.
The Expression Type action is available via Alt+ and is always at hand when you need to know the type of any expression at the caret.
The built-in formatter provides the functionality equal to go fmt.
This option extends the standard syntax highlighting with unique colors for each parameter and local variable.
The editor shows parameter hints for literals and nils used as method arguments. These hints make code much more readable.