Eclipse 和 IntelliJ IDEA 都提供了写代码的辅助功能,包括代码补全、代码生成、快速修饰和动态模板等功能。

1. 快速修复(Quick-fixes)

快捷键:Alt+Enter

所有的快速修复都是基于 Settings | Editor | Inspections 中的选项进行提示。

批量修复

如果需要一次多多个地方进行修复,如整个目录(folder)、一个模块(module)或整个项目(project),可以使用下面两个功能:

  • Analyze | Run Inspection By Name
  • Analyze | Inspect Code

Eclipse

IntelliJ IDEA

Action

Shortcut

Action

Shortcut

Quick fix

Ctrl+1

Show intention action

Alt+Enter

2. 生成代码(Generating code)

生成代码操作:Code | Generate (Alt+Insert)

该操作不仅可以在编辑器中使用,在项目窗口和导航栏也可以使用:

此时用于新建文件或包。

3. 代码补全(Code completion)

IntelliJ IDEA提供了多种类型的代码补全功能,包括:

  • 基本补全(Basic completion)
  • 次级基本补全(Second basic completion)
  • 智能补全(Smart completion)
  • 次级智能补全(Second smart completion)
  • 语句补全(Statement completion)

对于这些补全功能的详细描述,可以参考文章:

https://dzone.com/articles/top-20-code-completions-in-intellij-idea

IDEA默认不显示选择项的文档,不过可以通过如下设置启用:

不过不建议启用,在需要时,可以用Ctrl+Q快捷键调用,如此可以看到对应方法的文档,如下:

当光标在构造函数或方法的括号中,通过 Ctrl+P 可以看到参数信息:

如图,StringReader只有一个构造函数,接受字符串参数。

Eclipse

IntelliJ IDEA

Action

Shortcut

Action

Shortcut

Code completion

Ctrl+Space

Basic completion

Ctrl+Space

-

-

Smart completion

Ctrl+Shift+Space

-

-

Statement completion

Ctrl+Shift+Enter

  1. 模板

使用方法:输入触发字符串,按Tab键,如下:

IDEA的模板触发方式和Eclipse稍有不同,如下:

Template

Eclipse

IntelliJ IDEA

Define a main method

main

psvm

Iterate over an array

for

itar

Iterate over a collection

for

itco

Iterate over a list

for

itli

Iterate over an iterable using foreach syntax

foreach

iter

Print to System.out

sysout

sout

Print to System.err

syserr

serr

Define a static field

static_final

psf

可用模板列表: Settings | Editor | Live Templates

除了这种常规模板,还有一些其他形式的模板。

后缀模板(postfix templates)

可用后缀模板列表:Settings | Editor | General | Postfix Completion

包含式动态模板(Surround with live template)

快捷键:Ctrl+Alt+J

和上面不同,此时按 Enter 键选择

IntelliJ IDEA - 代码辅助功能的更多相关文章

  1. IntelliJ IDEA 代码字体大小的快捷键设置放大缩小(很实用)(图文详解)

    不多说,直接上干货!  这是在设置IntelliJ IDEA 代码字体的快捷键设置缩小: 怎么达到的了,就是ctrl + 你的鼠标滑扭往下  这是在设置IntelliJ IDEA 代码字体的快捷键设置 ...

  2. IntelliJ IDEA代码常用的快捷键(自查)

    IntelliJ IDEA代码常用的快捷键有: Alt+回车 导入包,自动修正 Ctrl+N   查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L  格式化代码 Ctrl+Alt+O ...

  3. intelliJ idea代码折叠

    在intelliJ idea中不仅可以对类.方法等结构的代码进行折叠(ctrl+-)还可以自定义折叠代码.intelliJ支持两种风格的自定义代码折叠,如下: visual studio style ...

  4. 如何折叠IntelliJ IDEA代码片段

      在 IntelliJ IDEA 中您可以折叠(fold)代码片段,将它们缩小到单个可见行.这样,您可以隐藏当前看起来无关紧要的细节.如果必要的话,折叠的代码片段可以被展开(unfolded). 折 ...

  5. IntelliJ IDEA代码编码区提示库源不匹配字节码解决办法

    在使用IntelliJ IDEA进行开发时,可能会在代码编辑区出现此提示:library source does not match the bytecode for class HelloWorld ...

  6. intellij 提交代码到git

    .配置git .create git repository .git-->add commit Directory .提交代码 git remote add origin https://git ...

  7. IntelliJ IDEA 代码检查规范QAPlug

    转自:http://blog.csdn.net/jizi7618937/article/details/51500725 Avoid Array Loops 数组之间的拷贝使用System.array ...

  8. IntelliJ IDEA 代码提示快捷键

    1.写代码时用Alt-Insert(Code|Generate…)可以创建类里面任何字段的getter与setter方法. mac版 是ctrl+enter 2.CodeCompletion(代码完成 ...

  9. intellij idea 代码正常,但是编译出现 java:需要";"

    1. 查看idea 的maven 插件是不是版本太低,发现应用里是用的jdk是1.7 maven插件是2.2.1 2. 查看应用编码,比如部分文件是GBK,里面有中文,而整个应用的编码是Utf-8

随机推荐

  1. Oracle--用变量保存查询出来的值

    1:在我们一般编写存储过程中比较常见的是,习惯将查询出来的一个值赋值给一个变量,这个如何实现呢,用into,代码如下   Select ID into 变量1 from 表 where 条件 2:但当 ...

  2. 转:在Android中使用AlarmManager

    原地址http://blog.csdn.net/maosidiaoxian/article/details/21776697 AlarmManager是Android中的一种系统级别的提醒服务,它会为 ...

  3. 浅谈P NP NPC

    P问题:多项式时间内可以找到解的问题,这个解可以在多项式时间内验证. NP问题:有多项式时间内可以验证的解的问题,而并不能保证可以在多项式时间内找到这个解. 比如汉密尔顿回路,如果找到,在多项式时间内 ...

  4. Eclipse动态web工程(Dynamic Web Project)添加jar文件的正确方法

    Eclipse中,创建了动态web工程之后,如果需要添加新的jar文件,有两种方法.第一种是配置工程的“build path”,第二种则是将jar文件放在工程目录下的“/WebContent/WEB- ...

  5. IIs安装&发布&解决遇到的问题

    IIS安装: IIS发布: 1.添加网站: 2.将发布的文件,copy到该网站的目录下 3. 刷新,文件显示出来,将其"转换为应用程序” => 4.在应用程序池中找到该网站相应的程序池 ...

  6. CocoaPods 抛出[!] Unable to satisfy the following requirements: 错误

    今天使用CocoaPods管理ReactiveCocoa,抛出以下错误 [!] Unable to satisfy the following requirements: - `ReactiveCoc ...

  7. oracle中的rownum

    1.oracle存在rownum关键字,它是一个伪列(系统分配在结果集上的一个特殊列) SELECT * FROM  oracleTable WHERE ROWNUM=1 上面这条语句是能够查询出第一 ...

  8. Python + Selenium 实现登录Office 365

    最近捡起之前用的Python + Selenium实现工作中需要的登录Office 365功能.(吐槽:国内网络真是卡,登录Office 365实属不易.另外Selenium这样的网站都要墙,无法理解 ...

  9. IO:OutPutStream

    OutputStream类(java.io.OutputStream) public abstract class OutputStream extends Object implements Clo ...

  10. html/京东项目/京东网页高仿/js/jq/css/java web/

    登录部分HTML+CSS: <!DOCTYPE html><html>    <head>        <meta charset="UTF-8& ...