美文网首页
IDEA添加非空Getter方法模板,并解决泛型

IDEA添加非空Getter方法模板,并解决泛型

作者: 星邪Ara | 来源:发表于2019-03-01 11:06 被阅读0次

为了满足项目需求进一步优化了模板

#if($field.modifierStatic)
static ##
#end
##获取类名S
$field.type ##
#set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project))))
##获取类名E
#if ($field.boolean && $field.primitive)
is##
#else
get##
#end
${name}() {
## 常用类型
#if($field.isString())
    if($field.name == null) set${name}("");
    return $field.name;
#elseif($field.isList())
    if($field.name == null) set${name}(new ArrayList<>());
    return $field.name;
#elseif($field.isSet())
    if($field.name == null) set${name}(new HashSet<>());
    return $field.name;
#elseif($field.isMap())
    if($field.name == null) set${name}(new HashMap<>());
    return $field.name;
## 如果是基本类型,则什么都不做
#elseif($field.numeric||$field.boolean||$field.byte||$field.char||$field.getTypeName() == "Character")
    return $field.name;
##用户自定义类型或以上未包含类型,直接new
#else
    ##解决泛型问题
    if($field.name == null) set${name}(new $field.type ## 
         #set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project))))());
    return $field.name;
    ##泛型有问题
    ##return $field.name == null ? new $field.getTypeName()() : $field.name;
#end
}
##end是ifelse的结尾

1、第一步


TIM图片20190301110522.png

2、第二步

image

3、第三步

image

4、第四步,把下面内容复制进去点击OK完事,直接使用nonNull即可


#if($field.modifierStatic)
static ##
#end
$field.type ##
#set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project))))
#if ($field.boolean && $field.primitive)
is##
#else
get##
#end
${name}() {
## 常用类型
#if($field.isString())
    return $field.name == null ? "" : $field.name;
#elseif($field.isList())
    return $field.name == null ? new ArrayList<>() : $field.name;
#elseif($field.isSet())
    return $field.name == null ? new HashSet<>() : $field.name;
#elseif($field.isMap())
    return $field.name == null ? new HashMap<>() : $field.name;
## 如果是基本类型,则什么都不做
#elseif($field.numeric||$field.boolean||$field.byte||$field.char||$field.getTypeName() == "Character")
    return $field.name;
##用户自定义类型或以上未包含类型,直接new
#else
    ##解决泛型问题
    return $field.name == null ? new $field.type ## 
    #set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project))))
    () : $field.name;
    ##泛型有问题
    ##return $field.name == null ? new $field.getTypeName()() : $field.name;
#end
}

相关文章

  • IDEA添加非空Getter方法模板,并解决泛型

    为了满足项目需求进一步优化了模板 1、第一步 2、第二步 3、第三步 4、第四步,把下面内容复制进去点击OK完事,...

  • IDEA快捷键

    idea添加getter、setter方法的快捷键:Alt + insert 查找类default Keymay ...

  • 泛型集合与非泛型集合,泛型

    ArrayList//非泛型集合 非泛型集合添加元素演示 public void Test1(){ ArrayLi...

  • 极客班STL与泛型编程(第一周笔记)

    C++模板 什么是泛型编程和模板? 泛型是一种编程思想,而模板是泛型编程在C++上的实现方法 以往的函数都会是有固...

  • iOS Swift 泛型函数 类型约束

    非泛型函数 如果想实现不确定类型值的交换上面的方法是不是显得太过死板,所以泛型的出现很好的解决这个 泛型 泛型函数...

  • Java泛型

    参考:Java知识点总结(Java泛型) 自定义泛型类 自定义泛型接口 非泛型类中定义泛型方法 继承泛型类 通配符...

  • C#基础提升系列——C#集合

    C#集合 有两种主要的集合类型:泛型集合和非泛型集合。 泛型集合被添加在 .NET Framework 2.0 中...

  • 实战技术

    第一课 泛型 泛型注意点:在数组中,一般用可变数组添加方法,泛型才会生效,如果使用不可变数组,添加元素,泛型没有效...

  • Flow泛型(Generic Types)

    泛型(Generic Types) 使用泛型添加抽象(多态)类型。 泛型(有时被称为多态类型)是一种抽象类型的方法...

  • Java 泛型

    泛型类 例如 泛型接口 例如 泛型通配符 泛型方法 类中的泛型方法 泛型方法与可变参数 静态方法与泛型 泛型上下边...

网友评论

      本文标题:IDEA添加非空Getter方法模板,并解决泛型

      本文链接:https://www.haomeiwen.com/subject/vtoruqtx.html