2021最实用的IDEA自定义方法注释和类注释模板

导读:本篇文章讲解 2021最实用的IDEA自定义方法注释和类注释模板,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

闲话少说,直接上干货

2021/08/21 更新方法注释

新建类文件的注释配置

如下 =>
在这里插入图片描述

自定义方法注释和类注释

第一步:在这里插入图片描述

**
 * $description$
 $params$ 
 $returns$
 * @author xxxxx
 * @date $date$
 */

注意:上图中的第四处,Shorten FQ names可以不勾选,它的作用主要就是缩短返回值类型的全类名,比如java.lang.String会变成String,但是如果是泛型的话会出现一点点小问题。

第二步:
在这里插入图片描述

Groovy脚本

自定义参数注释

无参数则默认不生成,expression文本如下:

groovyScript("String params =  \"${_1}\";if (params == '[]'){return '* '; }else {def result = '';def list = params.replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();for (i = 0; i < list.size(); i++) { result += '* @param ' + list[i] + ((i < list.size() - 1) ? '\\r\\n ' : ''); };return result; }", methodParameters())

groovy代码案例如下:

String customParamValueAnnotation(String _1) {
    String params = "${_1}";
    if (params == '[]') {
        return '* ';
    } else {
        def result = '';
        def list = params.replaceAll('[\\[\\s\\]]', '').split(',').toList();
        for (i = 0; i < list.size(); i++) {
            result += '* @param ' + list[i] + ((i < list.size() - 1) ? '\\r\\n ' : '');
        }; return result;
    }
}

自定义返回值注释

找了网上很多博客都没有找到满意的,所以干脆自己写了一段Groovy代码,自给自足,哈哈。expression文本如下:

groovyScript("String params = \"${_1}\";if (params == 'void'){return '* '; };def baseTypes = ['byte', 'short', 'int', 'long', 'float', 'double'];def arrayTypes = ['byte[]', 'short[]', 'int[]', 'long[]', 'float[]', 'double[]'];if (baseTypes.contains(params) || arrayTypes.contains(params)) {return '* @return ' + params; };params = params.replace(' ', '');int index = params.indexOf('<');if (index != -1) {params = params.substring(0, index); };return '* @return {@link ' + params + '}';", methodReturnType())

groovy代码案例如下:

    String customReturnValueAnnotation(String _1) {
        String params = "${_1}";
        // void的情况不需要返回值
        if (params == 'void') {
            return '* ';
        };
        def baseTypes = ['byte', 'short', 'int', 'long', 'float', 'double'];
        def arrayTypes = ['byte[]', 'short[]', 'int[]', 'long[]', 'float[]', 'double[]'];
        // 基本类型不需要引用标识
        if (baseTypes.contains(params) || arrayTypes.contains(params)) {
            return '* @return ' + params;
        };
        params = params.replace(' ', '');
        int index = params.indexOf('<');
        if (index != -1) {
            params = params.substring(0, index);
        };
        return '* @return {@link ' + params + '}';
    }

自定义返回值这做了一些处理,效果见下 :

  • 如果是基本类型的话,就不会被{@link }包裹
    在这里插入图片描述

  • 如果是void的话,就没有return
    在这里插入图片描述

引用类型则效果如下
在这里插入图片描述
在这里插入图片描述

这样我们可以直接通过Ctrl + 左键跳转到返回值的地方,是不是很棒?

觉得不错的话别忘了给个赞🤪,谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/15195.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!