Ctrl+Alt+S进入设置界面(我没改过按键映射,你也可以从File-OtherSetting进入设置),找到Editor->File and Code Templates,先在Includes里面加个名为File Header的文件头描述,如下图操作:
![文件头注释](https://img-blog.csdn.net/20180923085548776?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jeTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
然后点击左边的files配置应用到哪些类型的文件,我们选择Class,然后右边输入注释模板内容如下并保存:
#parse("File Header.java")
#if (${PACKAGE_NAME} &&${PACKAGE_NAME} !="")package${PACKAGE_NAME};#end
public class${NAME} {
}
java类的文件头就配置好了,接下来配置函数方法的注释:
![方法注释](https://img-blog.csdn.net/2018092308575191?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jeTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
先按照上图添加一个名为x-templates的群组(取你心仪的名字也ok),选中这个组,再次点右边的加号添加具体的模板如下图:
![方法模板内容](https://img-blog.csdn.net/20180923085923805?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jeTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
模板内容如下:
* 功能描述:
$params$
* @return: $return$
* @Author: $user$
* @Date: $date$ $time$
*/
注意最开始那里有一个空行
,并且参数这一行没有前面的*@Param
前缀,还往前顶了2个空格的位置
(有强迫症,最后的结果不完美睡不着) 。然后设置快捷键为+号,并且修改params这个参数变量:
![设置方法注释表达式,注意参数那里的配置](https://img-blog.csdn.net/20180923090432412?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jeTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
名为params的这个参数,Expression这一列留空
,在右边的Default value
里面输入以下内容(不这么做,得到的入参就是一个数组,不会每个入参换一行的):
groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n':'')}; return result", methodParameters())groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n':'')}; return result", methodParameters())
好了,保存(我的快捷键是配置为加号+Enter),实际用的时候如果只是输入加号+Enter的话,得不到一些参数值的
,具体不知道IDEA什么bug,我是这么用就完美解决
了:输入/**后再输入我的快捷键:加号+Enter,完美有木有?
![成功啦](https://img-blog.csdn.net/20180923090857259?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jeTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
我在简书发布的链接