IDEA:⾃动⽣成⽅法注释并添加@param参数(Java+Kotlin)
在⽤ Java 或 Kotlin 编写⽅法时建议编写完善的注释,包含每个参数的意义和返回的内容,下⾯介绍在 IDEA 中⾃动⽣成⽅法注释的技巧。
特别是我平时使⽤ Kotlin ⽐较多,⽽ Kotlin 的注释⽣成和 Java 有点不同,请往下看。
⼀、需求描述
默认 Java ⽅法输⼊ /** 回车会⾃动⽣成⽅法注释,并添加⽅法参数。
但我们可能想在注释中添加作者和⽇期,就得⽤到 IDEA 的实时模板功能了(代码⽚段)。
Java ⽣成的默认注释:
/**
*
* @param username
* @param password
* @return
*/
param namepublic 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;i f(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 模板补全内容了。
效果动图:
完  。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。