钻石语法

作者: Youth丶夏夏 | 来源:发表于2017-04-20 17:28 被阅读283次

    针对创建泛型定义和实例太过繁琐的问题,Java 7做了一项改进,以减少处理泛型时敲键盘的次数。如下代码:

    Map<Integer, Map<String,String>>  usersList  = new HashMap<Integer, Map<String,String>>();
    

    可简写为下面这样吗?

    Map<Integer, Map<String,String>>  usersList = new HashMap<>();
    

    在Java 7中,像这样的声明缩写完全合法,还可以向后兼容,所以当你需要处理以前的代码时,可以把过去比较繁琐的声明去掉,使用新的类型推断语法,这样可以省出点儿空间来。
    编译器为这个特性采用了新的类型推断形式。它能推断出表达式右侧的正确类型,而不是仅仅替换成定义完整类型的文本。

    为什么叫“钻石语法”
    把它称为”钻石语法”是因为这种类型信息看起来像钻石。原来提案中的名字是“为泛型实例创建而做的类型推断改进”(Improved Type Inference for Generic Instance Creation)。这个名字太长,可缩写ITIGIC听上去又很傻,所以干脆就叫钻石语法了。

    相关文章

      网友评论

        本文标题:钻石语法

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