【IntelliJ IDEA 入门指南】Java 开发者的神兵利器

天下武功 唯快不破

目录

  • 前言
  • IntelliJ 特点
  • Android 与 Python
  • 下载与安装
  • 设定与配置
  • 编码功能
  • 导航功能
  • 官方资料
  • 开发经验

前言

这次的教程,直接看影片会比较快了解功能作用,

文件逐笔说明会需要太多图片,因此简单列表快捷键,以供後续回顾。


IntelliJ 特点

Intelligent Java IDE : 智能的 Java 集成开发环境

  • 快速定位文件的导航
  • 各种智能的编辑功能

熟练地使用 :

      可以从技巧层面 提升开发速度
 (也是目前业界公认最好的 Java 开发工具)

Android 与 Pyhton

系出同源


下载与安装

IntelliJ IDEA - Download

https://www.jetbrains.com/idea/


设定与配置

设定选单

  • Win : ctrl + alt + S
  • Mac : cmd + ,

1.背景图片

Appearance & Behavior > Appearance > Background Image

这个配置,可以让你在开发时,保持愉快的心情
良好的情绪状态,也是提升开发速度的重要因素。

2.编辑字体

Editor > Font

  • Font : 18

  • Line Spacing : 0.8

    Win & Mac 可选择的不太一样

3.快捷键

Keymap

Increase Font Size

  • Win : alt + .
  • Mac : opt + .

Decrease Font Size

  • Win : alt + ,
  • Mac : opt + ,

Rename

  • Win : ctrl + alt + 6
  • Mac : cmd + opt + 6

Close All Tabs

  • Win : alt + w
  • Mac : cmd + shift + w

Terminal

  • Win : ctrl + alt + 0
  • Mac : opt + 0

4.TODO 列表

下方 TODO > 漏斗 > Edit Filter

Pattern

\b{name}\b.*

编码功能

1. Live Templates

缩写 + Tab

  • psvm ➞ main 方法
  • sout ➞ print 打印
  • iter ➞ for 回圈格式 1
  • itar ➞ for 回圈格式 2

其他 Live Template 写法

Editor > Live Template > Java

2. 以「行」为单位

复制:整行文字

  • Win : ctrl + D
  • Mac : cmd + D

移动:整合位置

  • Win : ctrl + shift + ↑/↓
  • Mac : cmd + opt + ↑/↓

注解:整行文字

  • Win : ctrl + /
  • Mac : cmd + /

注解:选取区块

  • Win : ctrl + shift + / 系统 键位冲突
  • Mac : cmd + opt + /

删除:整行文字

  • Win : ctrl + Y 系统 功能重叠
  • Mac : cmd + back

编辑:多行文字

  • Win : ctrl x2 + ↑/↓
  • Mac : opt x2 + ↑/↓

3. 以「区块」为单位

扩增选取

  • Win : ctrl + W
  • Mac : opt + ↑

递减选取

  • Win : ctrl + shift + W
  • Mac : opt + ↓

更改大小写

  • Win : ctrl + shift + U
  • Mac : cmd + shift + U

重新命名

  • Win : shift + F6 配置 : ctrl + alt + 6
  • Mac : shift + F6 配置 : cmd + opt + 6

复制缓冲区

  • Win : ctrl + shift + V
  • Mac : cmd + shift + V

4. 自动补全

自动补全

  • Win : alt + enter
  • Mac : opt + enter

自动产生

  • Win : alt + Ins
  • Mac : control + enter

5. 格式排版

自动排版

  • Win : ctrl + alt + L
  • Mac : cmd + opt + L

移出未使用 import

  • Win : ctrl + alt + O
  • Mac : cmd + opt + O

补充

执行01

  • Win : ctrl + shift + F10
  • Mac : control + opt + R

执行02

  • Win : shift + F10
  • Mac : control + R

导航功能 : 档案

档案 : 1. 专案 - 绝对位置

侧边栏:专案目录

  • Win : alt + 1
  • Mac : cmd + 1

侧边栏:宽度调整

  • Win : ctrl + shift + ←/→
  • Mac : cmd + opt + ←/→

档案 : 2. 专案 - 相对位置

  • Win : alt + home
  • Mac : cmd + ↑

档案 : 3. 查找功能

All

  • Win : shift x2
  • Mac : shift x2

Classes

  • Win : ctrl + N
  • Mac : cmd + O

Files

  • Win : ctrl + shift + N
  • Mac : cmd + shift + O

**Symbols

  • Win : ctrl + alt + shift + N
  • Mac : cmd + opt + O

Action

  • Win : ctrl + shift + A
  • Mac : cmd + shift + A

档案 : 4. 最近文件

  • Win : ctrl + E
  • Mac : cmd + E

补充 : 分页

分页移动

  • Win : alt + ←/→
  • Mac : cmd + shift + [ / ]

关闭分页

  • Win : ctrl + F4
  • Mac : cmd + W

关闭全部分页

  • Win : alt + W 配置设定
  • Mac : cmd + shift + W 配置设定

导航功能 : 代码

代码 : 1. 类别结构

  • Win : cmd + shift + W
  • Mac : cmd + 7

代码 : 2. 书签功能

Bookmarks

  • Win : F11
  • Mac : F3

Favorites

  • Win : alt + shift + F
  • Mac : opt + shift + F

书签侧边栏

  • Win : alt + 2
  • Mac : cmd + 2

代码 : 3. TODO 列表

没有预设快捷键,习惯是用滑鼠选定

补充 : 侧边栏

调整:下方侧边栏高度

  • Win : Ctrl + shift + ↑/↓
  • Mac : cmd + shift + ↑/↓

执行结果

  • Win : alt + 4
  • Mac : cmd +4

终端机

  • Win : alt + F12
  • Mac : opt + F12

官方资料

Keymap Reference

Help > Keymap Reference

https://resources.jetbrains.com/storage/products/intellij-idea/docs/IntelliJIDEA_ReferenceCard.pdf

过去整理 测试过的清单

只有 Mac 版本,跟系统冲突的按键,有特别写在标注栏


开发经验

双 IDE 开发

IntelliJ CE 社群版 无 Tomcat Server 功能 -> 个人使用 Eclipse 与 IntelliJ CE 双 IDE 开发

前同事也同时使用 Eclipse 与 VSCode,双 IDE 开发确实可行

Spring Boot + Gradle 专案

Int elliJ 支援 Eclipse 专案,但反过来则不行 -> 解决方案,是使用 gradle 专案,两者兼容

     Spring Boot + Gradle 专案: 最佳组合
 ( Main 方法可以启动,社群版就可以完成大部分任务 )

参考资料

IntelliJ 官方快捷键

https://resources.jetbrains.com/storage/products/intellij-idea/docs/IntelliJIDEA_ReferenceCard.pdf

IntelliJ 插件

  • Presentation Assistant

<<:  CISSP考试资源

>>:  透过 EventBus 解决 TransactionTooLargeException 问题

js:callback中调用类的function

如何实现在callback中加入类的function; 比如一个界面的button,点击之後,需要调...

Day13-Async && Await

前言 虽说ES6推出了promise解决了callback hell的问题,但人总是不容易满足。 於...

伸缩自如的Flask [day 17] Docker image化--安装篇

假设你今天很辛苦的把flask前後端都写好了, 在自己的电脑上运行,操作都没问题,终於把难缠的bug...

那些被忽略但很好用的 Web API / 前言

Web API -- Application Programming Interface for ...

自动化 End-End 测试 nightwatch-html-reporter

nightwatch-html-reporter: https://github.com/jls/n...