IDEA:自动生成方法注释并添加 @param 参数(Java+Kotlin) |
您所在的位置:网站首页 › idea快捷生成测试类 › IDEA:自动生成方法注释并添加 @param 参数(Java+Kotlin) |
在用 Java 或 Kotlin 编写方法时建议编写完善的注释,包含每个参数的意义和返回的内容,下面介绍在 IDEA 中自动生成方法注释的技巧。 特别是我平时使用 Kotlin 比较多,而 Kotlin 的注释生成和 Java 有点不同,请往下看。 一、需求描述默认 Java 方法输入 /** 回车会自动生成方法注释,并添加方法参数。 但我们可能想在注释中添加作者和日期,就得用到 IDEA 的实时模板功能了(代码片段)。 Java 生成的默认注释: /** * * @param username * @param password * @return */ public String index(String username, Integer password) { return "xinggang"; }我们期望生成这样的注释: /** * * @param username * @param password * @return java.lang.String * @author xinggang * @create 2022/02/24 **/ public String index(String username, Integer password) { return "xinggang"; } 二、解决方案打开 IDEA 设置:文件 | 设置 | 编辑器 | 实时模板,增加一个模板,设置如下,注意标记的 4 处。 1、缩写用 * 2、模板文本(注意开始是个 *,不是 /*) * * $name$ * $param$ * @return $return$ * @author xinggang * @create $date$ **/3、作用于 Java、Kotlin(Kotlin 获取不到方法参数,解决方案见本文后面章节) 4、展开方式 Enter(当然也可以选择自己喜欢的如 Tab) 5、编辑变量 其中 param 变量表达式: groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] == '') return result;if(i==0) result += '\\n'; result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : '')}; return result", methodParameters())6、使用:输入 /** 后回车,生成注释如下,光标会定位在开始位置方便输入方法的名称及描述等。 /** * | * @param username * @param password * @return java.lang.String * @author xinggang * @create 2022/02/24 **/ public String index(String username, Integer password) { return "xinggang"; } 三、Kotlin 获取不到参数1、若不使用上面的模板,Kotlin 默认输入 /** 也不会自动生成带参数的注释,这是因为 IDEA 默认没有安装 kdoc-generator 插件。 2、即使使用上面的模板,Kotlin 方法上也无法获取方法参数。 本文模板输出的内容(获取不到参数) /** * * @param null * @return * @author xinggang * @create 2022/02/24 **/ fun saveData(billNO: String, pcqy: String, currUser: SysUser): Any { 。。。 } 适用于 Kotlin 的变通解决方案:我思前想后终于找到一个不算完美但用起来倒也舒爽的变通方案。 1、安装 kdoc 插件安装 kdoc-generator 插件后即可自动生成带参数的方法注释。 kdoc 生成的注释如下: /** * TODO * * @param billNO * @param pcqy * @param currUser * @return */ fun saveData(billNO: String, pcqy: String, currUser: SysUser): Any { 。。。 } 2、修改上面的模板将之前定义的 * 模板适用范围去掉 kotlin,即 kotlin 中不再使用上面定义的模板,如果一开始就没有勾选 kotlin 则忽略此步。 3、新增加模板 TODO方法不再赘述,和之前的一样,直接看图。 模板文本: $name$$END$ * @author xinggang * @create $date$ 4、使用这样就 OK 了,使用时先按 /** 回车输入 kdoc 的默认注释,这时光标停留在 TODO 位置,这时再直接按 Tab 就调用 TODO 模板补全内容了。 效果动图: 完🏝️。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |