教你把Java Bean撸成串的最快方法-自定义setter生成脚本

适用工具:IntelliJ IDEAAndroid Studioapi

1 效果展现

废话少说,看效果。框架

Student student = new Student()
                .setId("11111")
                .setName("Jack")
                .setGender("male")
                .setSchoolName("Center South University")
                .setClassName("IOT");复制代码

我相信,不少人都已经熟悉链式调用了。若是不熟悉也没有关系,链式调用就是我上面的写的那个样子。你在写的过程当中,能够一直点下去。是否是很爽!异步

可是,一般状况下,Java中只有建造者模式才提供这种方法,另外还有些框架和库提供。工具

想一想使用RxJava的人,写代码真是爽的不得了。固然RxJava那个爽的另有其因,它把异步撸成了串的同时把多层嵌套撸成了串。要知道,个人Leader说(甩锅用的,后面说的不对不要找我),人思惟的嵌套层次大概只有3层,若是再多,代码阅读会很是困难。而代码嵌套在异步处理的时候常常发生。因此RxJava充分解决了这个问题。好像扯远了。ui

啪!说好的废话少说呢?this

2 原理

在我看来,咱们在写Java Bean的时候,常常写的set方法,其中的返回值void,简直就是一种资源浪费。因此我想,将set方法返回this,不就能够实现Java Bean的链式调用吗?嗯,没错,我上面的链式调用就是更改了Java Bean中的set方法,让他们返回this。那么看一下Student的代码。spa

public class Student {

    private String id ;
    private String name ;
    ……

    public Student setId(final String id) {
        this.id = id;
        return this;
    }

    public Student setName(final String name) {
        this.name = name;
        return this;
    }

    ……
}复制代码

对就是这个样子。3d

可是咱们在写代码的时候一般都是自动生成settergetter方法的呀。我以前都是生成完了setter方法以后,全局替换void字段,可是这种效率过低了,并且,当你的Bean中有其余方法了以后,就不能这么干了。那么接来下展现 神技 !code

3 神技效果

看图吧!cdn

生成的setter方法正是咱们须要的。前面已经写了,该神技适用于IntelliJ IDEAAndroid Studio。其实就是IntelliJ IDEA内核嘛。

那么来看看怎么作吧!

4 神技实现过程(自定义setter脚本)

是否是感受高大上了,其实很简单。这就教给你们。

4.1 打开Generate并进入setter

4.2 进入Setter成员选择界面

这个界面你是否是再熟悉不过了,但你有没有注意看过我标记的两个地方?

Template里就是setter的模版生成脚本,咱们当前使用的是默认的。这个时候若是你回去上面的动图,会发现,个人这里是my setter。其实就是我本身写的一个生成脚本。可是后来我发现,根本没有这种必要由于,IntelliJ IDEA已经给咱们准备好了。

点击下拉键,选择Builder模版(这个模版就是带有this返回值的setter生成模版),而后再选择成员,肯定,便可生成咱们要的setter

若是有必要的话,咱们还能够本身自定义模版。

4.3 自定义模版

点击,进入模版管理界面。

咱们能够经过建立一个新的模版脚本,而后编写脚本便可。以后点击Ok。我本身写了一个my setter,后来发现和系统的Builder同样。囧!

5 结束语

其实不止是setter的模版能够这样改,其余的也能够,大同小异。去按本身的需求作吧!

更多Android Studio的神操做能够查看个人另外一篇文章:

Android Studio相见恨晚的操做锦集

Android Studio编辑区背景设置方法。能够看我另外一篇文章:

让你的Android Studio性感起来--Sexy Editor

谢谢阅读,嘿嘿!

相关文章
相关标签/搜索