プロのヒント
このガイドは、IntelliJ IDEA の基本機能にすでに慣れていて、さらに詳しく知りたい方を対象としています。 IntelliJ IDEA を初めてお使いになる方は、このガイドを読む前に IntelliJ IDEA の概要をお読みいただくことをお勧めします。
コーディング支援
行全体コード補完
行全体コード補完機能は、ローカルで実行されるディープラーニングモデルを使用して、コード行全体を提案します。
提案全体を受け入れるには、 Tab を押します。
または、メインメニューの に移動するか、 別のショートカットを構成します。
提案を単語ごとに受け入れるには、 Ctrl+Right を押すか、メインメニューで に移動します。
提案を 1 行ずつ受け入れるには、 End を押すか、メインメニューで に移動します。
型情報とクイックドキュメント
キャレットのシンボルに関する詳細情報、たとえば、そのシンボルの由来やタイプが何であるかを知りたい場合は、 クイックドキュメントが役立ちます。 Ctrl+Q を押して呼び出すと、詳細を示すポップアップが表示されます。
詳細な情報が不要な場合は、代わりに 型情報 アクションを使用してください。コード要素にキャレットを置いて Ctrl+Shift+P を押すか、メインメニューの に移動します。 選択した式の型だけを表示し、画面の領域をそれほど取りません。

コード補完の大 / 小文字の区別
デフォルトでは、IntelliJ IDEA コード補完の大文字と小文字の区別は、入力した最初の文字にのみ影響します。 この戦略は、 ページの 設定 ダイアログ (Ctrl+Alt+S) で変更でき、IDE がすべての文字を区別するように設定できます。

ここで、 入力時に候補を表示する オプションをオフにすることもできます。 これは、コード補完ポップアップを明示的に呼び出した場合にのみ表示する場合に意味があります。
キャメルハンプ
デフォルトでは、エディターで何かを選択しても、IntelliJ IDEA は単語の大文字と小文字を区別しません。 例えば camelCase に従って単語を選択したい場合は、単語全体ではなく一部だけを選択してください。 この機能は、 のページで有効にすることができます。 設定 ダイアログを開いてください。
リファクタリング
文字列フラグメントを抽出する
IntelliJ IDEA は、実行可能コードだけでなく文字列リテラルもリファクタリングすることができます。 文字列の任意のフラグメントを選択し、 抽出変数 / 定数 / フィールド / パラメーターを呼び出して定数として抽出し、コード全体でその使用箇所を置き換えます。
型の移行
リファクタリングでは、通常、シンボルの名前を変更したり、コード内のステートメントを抽出して移動したりします。 しかし、リファクタリングはそれだけではありません。 例: 型の移行 (Ctrl+Shift+F6 経由で利用可能)を使用すると、変数、フィールド、パラメーター、メソッドの戻り値(int → String、 int → Long など)の型を変更したり、依存コードを更新したり、起こりうる競合を解決したりできます。
ブール値の反転
IntelliJ IDEA が型の移行を自動化できるのであれば、セマンティクスでも同じことをしてみませんか ? ブールシンボルの使用をすべて反転するには、 ブール値の反転リファクタリングを使用します。
リファクタリングの取り消し
IntelliJ IDEA を使用すると、便利な Ctrl+Z ショートカットを介して 元に戻すを呼び出すことでいつでも何でも元に戻すことができるため、コードをリファクタリングするときに結果を心配する必要はありません。
コード解析
構造検索と置換
構造検索と置換、または SSR は強力なツールです。 静的コード解析とリファクタリングの自動化に使用できます。 簡単に言うと、コード内の特定のパターンを検索し、パラメーター化されたテンプレートに置き換えることができます。 そのために、コードパターンを定義するための独自の言語が搭載されており、この 記事で詳しく説明しています。
この機能にアクセスするには、メインメニューの に移動します。

ユーザーインターフェース
パンくずリストとタグツリーのハイライトを無効にする
たくさんの HTML や XML を扱っていて不必要な気を散らすのを避けたい場合は、 のパンくずリストとタグのハイライト表示を無効にすることができます。
不必要なガターアイコンを無効にする
ガター は、エディターの最も左にある列で、通常、編集中のコードに関連する便利な情報を表示します。 多すぎると感じる場合は、 設定 ダイアログ(Ctrl+Alt+S )の Editor | General | Gutter Icons で表示内容を設定できます。
どこでも検索
どこでも検索を使用すると、コード、ライブラリ、UI の一部、設定(設定名の前に / を付ける)、さらにはアクション名など、文字通りどこにでも任意のテキストフラグメントを見つけることができます。 この機能を頻繁に使用している場合、ポップアップ上でそのまま Enter を押すと IntelliJ IDEA の設定にアクセスできることを知っておくと便利です。 例えば、ここではエディターの設定にアクセスしています。

検索クエリを /plugins で始めると、オンとオフを切り替えることができます。

他のタグには /appearance、 /system、 /inspections、 /registry、 /intentions、 /templates、 /vcs が含まれます。
もう 1 つの興味深い事実は、どこでも検索が略語をサポートしていることです。 設定ダイアログの キーマップページを使用して、任意のアクションに短いテキストを割り当てることができます。

次に下記のテキストを入力して、どこでも検索からこのアクションを呼び出します。

エディタータブを非表示にする
現在のタブを除くすべてのエディタータブを閉じる必要がある場合は、 Alt を押したまま現在のタブの閉じるアイコン をクリックします。

エディタータブをまったく表示したくない場合は、設定の エディタータブ ページに移動し、 タブ配置 ドロップダウンリストから なし を選択します。
新しいウィンドウでファイルを開く
この機能は見つけにくいですが、便利です。 プロジェクトツールウィンドウ でファイルを選択し、 Shift+Enter を押すと、新しいウィンドウでファイルを開くことができます。
エディター
クリップボードと比較
IntelliJ IDEA には、コード、jar ファイル、リビジョン、さらにはイメージ用の差分ビューアーが組み込まれています。 これを呼び出すには、任意のファイルのペアを選択し、 Ctrl+D を押します。
単一のファイルを選択した場合、IDE は比較するファイルを選択するように求めるプロンプトを表示します。 アクティブなエディターとクリップボードをすばやく比較するには、 を選択します。

履歴から貼り付け
IntelliJ IDEA は、クリップボードにコピーしたすべてのものを追跡します。 クリップボード履歴から以前にコピーした項目の 1 つを貼り付ける場合は、いつでも Ctrl+Shift+V を押します。

複数選択
複数選択を使用すると、複数のテキストを一度にすばやく選択して編集できます。
まず、編集したいテキスト範囲を選択します。
次に Alt+J を押すと、IntelliJ IDEA は現在のファイルを前方に検索し、大文字と小文字を区別して一致するテキストが見つかると選択範囲に追加します。 もう一度 Alt+J を押すと前方に、 Alt+Shift+J を押すと前に戻りますが、検索がファイルの末尾に達すると、ファイルの先頭からやり直されることに注意してください。
選択が完了したら、すべてのフラグメントを 1 つであるかのように編集できるようになります。

正規表現
IntelliJ IDEA には正規表現(regex または regexp)を扱うための便利な機能が多数用意されています。 例えば、 検索と置換機能で正規表現を使用することができ、置換式ではキャプチャされたグループもサポートされています。 また、コード内の任意の正規表現をチェックすることも可能です。キャレットをその場所に置き、 Alt+Enter を押して 正規表現の確認 インテンションを使用してください。

バージョン管理
変更を修正する
コミット変更ダイアログでは、IntelliJ IDEA でさまざまな操作が行えます。 その一つが コミットの修正 で、直前のコミットを変更し、現在の変更を結合したい場合に便利です。
シェルブとパッチ
シェルブは Git Stash と同等の IDE 機能ですが、あらゆる VCS で使用できます。現在の作業を一旦中断してリポジトリからプルしたものをすぐに修正し、その後に中断していた作業を再開する必要がある場合に重宝します。この機能を使用すると、ローカルで変更したファイルをコミットせずに処理できるため、変更内容を失うことも、慌ててマージコミットを行う必要もありません。 この機能を使用すると、ローカルで変更したファイルをコミットせずに処理できるため、変更内容を失うことも、慌ててマージコミットを行う必要もありません。
詳細については、「Git-Stash(英語) 」ページおよび「スタッシュとスタッシュ解除 」セクションを参照してください。
パッチを使用すると、変更内容をテキストファイルに保存し、メール(またはその他の古い媒体)で転送してコードに適用することができます。 飛行機が無人島に着陸した後や、何らかの理由で安定したブロードバンド接続がない状況に陥った後など、どうしてもコミットする必要がある場合に役立ちます。
詳細は、 パッチを使うを参照してください。
デバッグ
非中断ブレークポイント
プログラムを一時停止せずに、特定のコード行で何かを評価したい場合があります。 そのような場合は、一時停止しないブレークポイントを使用します。 ブレークポイントを作成するには、 Shift があるガターをクリックし、 評価して記録(E) フィールドに式を入力します。

このようにして、プロジェクトコードに追加のステートメントを挿入することなく、アプリケーションの状態を変更またはログに記録できます。 これは、変更できないコンパイル済みクラスをデバッグする場合に特に便利です。
フィールドブレークポイントまたはフィールドウォッチポイント
上記のアクションブレークポイントに加えて、 フィールドウォッチポイントも使用できます。 このブレークポイントは、関連付けられたフィールドにアクセスされたときに実行を停止します。 フィールドウォッチポイントを作成するには、 Alt を押しながらガターをクリックします(macOS の場合は Ctrl+Cmd )。

オブジェクトマーカー
アプリケーションをデバッグしているとき、IntelliJ IDEA を使用すると、 オブジェクトのマーク アクションを介して、任意のオブジェクトの特定のインスタンスを色付きのラベルでマークして識別しやすくすることができます(Evaluate Expression、 Variables または Watches 表示で利用可能)。 )
また、ラベルが付いたインスタンスがあれば、それを条件式にも使用できます。

カスタムデータレンダラー
式の評価、 変数、 ウォッチ、 インラインデバッガーはすべて、主にクラスの toString 実装に基づいて、変数値をレンダリングする標準的な方法を使用します。 すべてのクラスに独自のカスタムレンダラーを定義できることを誰もが知っているわけではありません。 そのためには、 デバッグツールウィンドウ のコンテキストメニューから を選択します。

これは、使用しているライブラリのいくつかのクラスが意味のある toString 実装を提供していない場合に特に便利です。つまり、ライブラリの外で自分で定義できます。
フレームにドロップ
デバッグ中に「時間を遡る」必要がある場合は、「フレームをドロップ」アクションを使って行うことができます。 誤って進みすぎてしまった場合などに非常に便利です。 アプリケーションのグローバル状態は元に戻りませんが、少なくともフレームのスタック単位で過去に戻ります。
強制リターン
未来に移動して、現在のメソッドからそれ以上の命令を実行せずに強制的に戻りたい場合は、 強制リターン アクションを使用します(このアクションを呼び出すには、 Ctrl+Shift+A を押してアクション名を入力します)。 メソッドが値を返す場合は、その値を指定する必要があります。
言語インジェクション
言語インジェクションを使用すると、IDE は文字列リテラルに埋め込まれたコードの一部を認識できるようになります。 文字列リテラルに言語を挿入すると、構文のハイライトやコード補完など、そのリテラルを編集するための包括的なコード支援が得られます。
例: Java コードでは、JSON を文字列リテラルに挿入できます。 IntelliJ IDEA は、挿入された JSON コードを認識し、挿入されたフラグメント内の構文のハイライトやコードのフォーマットなどの JSON 固有の機能を提供するため、同じファイル内で両方の言語を簡単に操作できます。
言語インジェクションの詳細を参照してください。

アプリケーションの更新
アプリケーションをアプリケーションサーバー(Tomcat、JBoss など)で実行している場合、 Ctrl+F10 を介してアプリケーションの更新アクションを使用して、変更されたクラスとリソースを再ロードできます。
詳細については、 アプリケーションサーバー上のアプリケーションを更新する を参照してください。
ツール
外部ツール
IntelliJ IDEA には多くの開発ツールが統合されており、すぐに使用できます。 必要なツールが統合されていないものの、ショートカット経由で使用したい場合は、 /外部ツールにアクセスし、ツールの実行方法を設定してください。 その後、 のメインメニューからツールを実行できるようになります。
詳細については、 外部ツール を参照してください。