旧账号不用了,重新弄了一个新账号
发个简单的文章,活跃一下账号。
idea的模板设置相信各位也查了不少了,或者也已经形成了自己的常用模板设置。
以下内容可以作为各自的参考,对于新手来说也可以作为一个入门导向,来设置属于自己的注释模板。如果各位看官姥爷看完觉得有用,请来个素质三连。觉得一般的也可以点个赞鼓励一下
好了,我们进入正文。
打开idea,左上角找到Preference,在左侧导航栏中找到File and Code Templates。
在includes下可以设置File Header,这样在你创建Files支持的文件类型时,就会自动生成你设置的注释模板。下面是我自己的设置示例,对于class的注释模板还是比较简单的,相关支持的变量社设置可参考description中的说明。
设置好注释模板后记得启用Enable Live Templates,这样在创建新的file时才会自动生成你设置的模板注释。效果如下:
方法注释模板就有的玩了,简单设置或者晚点花活都是可以的。在寻找了一圈后,没有找到令我满意的模板,所以就研究了一下,供大家参考。
在Preference界面下,在左侧导航栏中找到Live Templates,点击右侧的加号,先添加一个Template Group,然后取一个名字,我设置的名字如图所示:MethodTemplate。
设置好Template Group后,再在你设置的Group下点击右侧的加号,添加一个Live Template。Template Text的内容还是按照你自己的喜好或者公司要求来设置,使用两个$$来包裹你的变量名。稍后我们说一下变量值的设置。我的示例如图所示:
Abbreviation是设置的快捷方式的缩写,用于在你给方法添加注释时的提示标志。我为了简单我直接设置的*号。
这里边有几个注意点,第一点就是Template text的第一行,如果你像我图示一样,第一列只设置了*号,而不是/*或者/**,那么在添加注释的时候需要敲/**,然后敲tab,注释才会正确补全,如果按照我图示设置,添加时只敲*,然后敲tab,是没有注释开始的/(斜杠)的,所以是错误的。
所以第一行看个人喜好,按照我的Template Text设置的话,就敲/**,再敲tab,补全注释。如果想敲*,再敲tab,就自动正确补全的话,Template Text的第一行就设置/**
第三点Options下的Expand with Default不建议修改,就用默认tab就好,这个就是设置你用哪个快捷键补全你的注释。
重点是第二点,自动获取参数和返回类型的设置上。
我们一般都希望能够返回这种样式的参数和返回类型。有基本的参数名称和返回类型。图示这是在敲了/**后,再敲回车,idea自动给补全的。
/**
*
* @param str1
* @param b
* @return
*/
public String methodAnnoDemo(String str1, int b){
return "1";
}
我们甚至都希望参数类型也能显示出来,像这样:
可是idea自带的补全是没有参数类型的,那么就需要我们自己设置一下。强大的idea给提供了很多默认的方法用于获取参数的值。具体Expression方法都是什么意思,大家可以参考一下官方介绍。
对应我们要设置的param变量,系统只提供了methodParameters()方法,可以返回方法中的所有参数,但是效果是这样的。明显不符合我们的要求。
好在idea足够强大,给我们提供了groovyScript脚本,让我们像写代码一样,可以把数据处理成我们想要的结果。将param的Expression表达式换成groovyScript方法,然后填充表达式脚本,就可以达到不同的效果。
下面我提供两种脚本,供大家参考
第一种就是像idea自动补全那样,只有参数名称,没有参数类型。使用下面的脚本
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();def types=\"${_2}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();for(i = 0; i < params.size(); i++){def p1=types[i].split(',').toList();def p3='';for(i2=0;i2
效果如下:
至于return的处理,如果没有具体要求,就是用idea提供的默认方法methodReturnType即可,效果如上,直接显示返回类型的全路径名称。
如果也想格式化成只显示具体的返回类型,不显示全路径类名,就使用下面的脚本
groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split('<').toList(); for(i = 0; i < params.size(); i++) {if(i!=0){result+='<';}; def p1=params[i].split(',').toList(); for(i2 = 0; i2 < p1.size(); i2++) { def p2=p1[i2].split('\\\\.').toList(); result+=p2[p2.size()-1]; if(i2!=p1.size()-1){result+=','} } ; }; return result", methodReturnType())
效果如下:
至于throws异常的处理,没有找到好的方法,使用idea提供的completeSmart智能补全方法即可,在你方法有异常抛出的时候,只需要敲对应的异常的首字母,就可以给出提示。效果如下:
完事!!!是不是非常完美,你学废了么吗
最后,码字不易,如果觉得还不错,请给个素质三连,谢谢(抱拳)