摘要:代码补全可以有效的提升开发效率、减少拼写错误和输入代码量。CodeArts 依赖于 codearts.smartassist-java-ls 插件实现代码补全功能。

本文分享自华为云社区《CodeArts 智能代码补全》,作者: HuaweiCloud 开发工具。

代码补全类型主要有:

  • 关键字基础补全
  • 名字补全
  • 类型补全
  • 函数补全
  • 片段补全
  • 缩写补全
  • 智能类型匹配补全
  • 标签属性补全

CodeArts 的代码补全具有能使用字段名称的驼峰字母作为关键字母快速搜索的特点。

关键字基础补全

关键字 (Reserved Words) 是指在 Java、Javascript 等计算机语言中有特定含义,用来表示一种数据类型,或者表示程序的结构等。

CodeArts 支持计算机语言的关键字基础补全。

如图所示:

输入关键字首字母,代码补全列表可优先推荐。

名字补全

名字是指用户自定义的变量名、参数名、方法名、类名、接口名、包名等名称。

  • CodeArts 可根据上下文场景,推荐当前变量命名的模板。

定义类的变量,代码推荐变量命名最优模板。

  • 当您定义好方法参数后,输入首字母后,CodeArts 可优先在代码列表中推荐参数名称。

输入名字首字母,代码补全列表可展示建议的名字。

类型补全

类型包括基础数据类型 (整数类型、字符类型、浮点类型、布尔类型) 和引用类型 (类、接口类型、数组类型、null 类型)。

定义的每一个变量都必须声明其数据类型,因其在编译时进行严格的语法检查,如果变量值的数据类型与定义的类型不同,则会报错。

因此,CodeArts 对数据类型进行补全,便于减少拼写错误,加快变量的定义。

如图所示:

输入数据类型首字母,代码补全列表可优先推荐。

函数补全

函数是指定义在类中的具有特定功能的一段独立小程序。CodeArts 函数补全时可补全函数所需的元素:方法名、返回值类型、参数表、函数体。

  • CodeArts 可根据类中的变量,补全类变量相关函数。

类中已定义变量 homeBrandMapper,CodeArts 搜索推荐关于变量的常用的模板方法。

选择 setHomeBrandMapper () 方法上屏后,自动补全变量的 set 方法包含方法名、参数表、函数体。

  • 在项目主类中,可快速进行 main 方法声明补全。

在类中输入 main,选择 main () method declaration 上屏后,补全主类 main 方法。

片段补全

CodeArts 为常用的代码片段提供了标准的模板,这些代码片段具有基于源代码语言的各种构造。这包括条件语句和循环、折叠区域和其它构造。

动画演示:

缩写补全

CodeArts 常用缩写补全,可自动补全代码语句及符号。

常用缩写:

  • sout、souf、soutm、soutp、soutv 打印函数
  • for 循环简写 fori
  • prsf、psf、psfi、psfs、psvm 变量定义语句

动画演示:

智能类型匹配补全

智能类型匹配代码能够过滤代码建议列表并仅显示适用于当前上下文的类型。

在可以确定类型的情况下使用:

  • 在赋值语句的右侧部分
  • 在变量初始值定义中
  • 在 return 返回语句中
  • 在方法调用的参数列表中
  • 在对象声明中 new 关键字之后
  • 在链式表达式中

默认情况下,CodeArts 会在您键入时自动显示代码推荐列表窗口。当您完成语句上屏,希望转换当前代码时,按 Ctrl+Shift+Space 键可触发 CodeArts 搜索与当前的代码相关内容,选择可进行转换。

return 返回语句。CodeArts 扫描 return 语句相关的方法内容,并建议适合当前上下文的返回值。

鼠标在 return 上,操作快捷键 Ctrl+Shift+Space,推荐列表展示可转换的代码。

标签属性补全

CodeArts 能够自动补全许多文件类型中标签和属性的名称和值:

  • HTML,包括 CSS 类和 JSX 中的 HTML 标签的补全。

按 < 可以开始输入标签名称。CodeArts 扫描文件显示适合当前上下文的标记名称列表。

按 Enter 键,CodeArts 可添加所选的标签。

驼峰搜索

变量、参数、类、方法均可使用驼峰字母作为关键字母快速搜索,驼峰字母不区分大小写。

直接输入 SmsHomeBrandMapper 的驼峰字母 “Shbm” 作为关键字;

CodeArts 搜索项目中的相关类名展示在代码推荐列表,Enter 或 Tab 键可上屏 SmsHomeBrandMapper。

点击关注,第一时间了解华为云新鲜技术~

8种桌面IDE CodeArts智能代码补全类型的更多相关文章

  1. CodeGeeX:vscode中全新的智能代码补全插件

    大家好我是费老师,代码智能补全是近几年非常热门的话题,有前不久宣告项目终结的kite,反响平平的tabnine,以及最近吃了一堆官司的copilot. 而广大从事编程工作的用户只关心市面上的代码智能补 ...

  2. Netbeans源代码编辑技巧——使用代码补全和代码生成

    原文 Netbeans源代码编辑技巧——使用代码补全和代码生成 使用代码补全生成代码 一般来说,代码补全对于自动填充缺失的代码是有帮助的,例如标识符和关键字.截至 NetBeans IDE 6.0,您 ...

  3. VS Code Java 3月更新|代码补全、Maven 以及 Java 插件预览版本新升级!

    Nick Zhu Senior Program Manager, Developer Division at Microsoft 大家好,欢迎来到 Visual Studio Code Java 的 ...

  4. [jetbrains系列] 外链第三方库+代码补全设置

    jetbrains系列的IDE真的是太好用了,有种相见恨晚的感觉. 在开发过程中第三方库是必不可少的,在开发的时候如果有一个可以补全的IDE可以节省查文档的时间. 举个例子:给pycharm配pysp ...

  5. vim--golang代码补全

    我想说,我折腾了很久编辑器,试了九种办法 最后我只成功了一种 但我依然想就我混乱的逻辑做下整理 一.一开始,我试图入手ipad编码软件,大概9美金吧,叫Textastic.我试图用它的近亲来试验Tex ...

  6. vim代码补全-spf13,YouCompleteMe

    vim代码补全 现在的图形界面的IDE(Integrated Development Environment)一般具有语法高亮,语法检查,自动补全功能,大大提高了编程的效率. vim作为文本编辑器其强 ...

  7. Notepad++强大的代码补全和代码提示功能的方法

    最近写项目,经常要打开一些文件去修改一些代码段.那么我的项目都是使用ied大型编辑器去写的,每次修改文件,哪怕是一个标点都要用一分钟时间去打开软件.当然,后来我也考虑到使用记事本,但总感觉不是很爽. ...

  8. Learning Lua Programming (3) iMac下搭建Lua脚本最好的编码环境(代码补全,编译运行)

    这篇文章参考自http://blog.sina.com.cn/s/blog_991afe570101rdgf.html,十分感谢原作者的伟大创造,本人亲测可行. 这篇文章记录一下如何在MAC系统环境下 ...

  9. 在 Vim 中使用 pydiction 对 Python 进行代码补全

    Pydiction 允许你在 Vim 中实现 TAB 代码补全, 可以补全的内容包括:标准的.自定义的,以及第三方模块和包.外加关键字.BIFs,和字符串. Pydiction 由 3 个主要文件构成 ...

  10. ADT中的代码补全设置

    设置自动补全代码 刚刚学Android,有很多变量和方法 都不熟悉.需要有提示,才更加方便. 快捷方式:Alt + /    可以出现代码提示. 默认的只有输入“ .” 以后才会有代码补全提示,可作如 ...

随机推荐

  1. Vue之监听数据变化

    1.轻度监视 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  2. 用go封装一下临时token

    用go封装一下临时token 本篇为用go设计开发一个自己的轻量级登录库/框架吧的临时token篇,会讲讲临时token的实现,给库/框架增加新的功能. Github:https://github.c ...

  3. 2023 SHCTF-校外赛道 Crypto—Wp

    WEEK1 立正 wl hgrfhg 4gNUx4NgQgEUb4NC64NHxZLg636V6CDBiDNUHw8HkapH :jdoi vl vlkw ~xrb wd nrrT Y: 凯撒解密,偏 ...

  4. Odoo—货运管理—odoo时差问题

    第一次踩odoo时差的坑,才知道原来odoo在存储日期数据时,是以UTC0时区存放的,和北京时间相差8个小时.只是odoo本身能很好的处理日期数据的存储和展示,所以刚开始接触odoo,不容易发现这个问 ...

  5. SVN分支与合并透析

    做法: 1.拉分支开发代码 2.开发完成后要和到主干去发布,这时候先把主干合并到分支,解决冲突 3.运行分支系统,看是否正确 4.再把该分支合并到主干 要知道分支分出去时的版本号,cmd打开命令行,使 ...

  6. Altium designer 设置覆铜与板框间距

    新版Altium designer不再推荐使用 Keep-Out 层作为板框 以前使用 Keep-Out 作为板框的一个很大原因是因为 Keep-Out 自带板框间距属性.省去甚至不用考虑铺铜的边缘问 ...

  7. 记录jdk17相对于jdk8增加的一下主要语法糖和新特性

    jdk17 发布已经好久了,作为java的长期支持版本,引入了许多有趣且实用的新特性.这些特性不仅提高了开发效率,还增强了语言的表现力和安全性.并且是SpringBoot 3.0以后版本的硬性要求,之 ...

  8. Nginx自定义日志中时间格式

    背景 工作需要对接内部的日志中台,对日志打印有固定的格式要求,为了使Nginx的access日志也能被采集,需要对日志格式进行自定义,要求日志格式为: yyyy-MM-dd HH:mm:ss.SSS ...

  9. 【GIT】学习day04 | 将本地代码推送到码云仓库中进行管理【外包杯】

    仓库代码页 将本能仓库和码云仓库进行关联 代码组成 git remote add origin 加上下面的地址 将本地仓库的代码推送到码云仓库上 git push -u origin master 之 ...

  10. 使用 Guava Retry 优雅的实现重试机制

    王有志,一个分享硬核Java技术的互金摸鱼侠 加入Java人的提桶跑路群:共同富裕的Java人 大家好,我是王有志.今天我会通过一个真实的项目改造案例和大家聊一聊如何优雅的实现 Java 中常用的的重 ...