Java通用实例创建的类型推断

本文概述

  • 通用实例创建示例的类型推断
  • 类型推断和泛型构造函数
【Java通用实例创建的类型推断】在Java 7中, Java提供了改进的编译器, 该编译器足够智能以推断通用实例的类型。现在, 你可以用一组空的类型参数(< > )替换类型参数。这对尖括号被非正式地称为菱形。
Java 6和更低版本中使用以下方法。
Ex. List< Integer> list= new List< Integer> ();

现在, 你可以使用Java 7中引入的以下新方法。
Ex. List< Integer> list = new List< > (); // Here, we just used diamond

通用实例创建示例的类型推断
import java.util.List; import java.util.ArrayList; public class TypeInference { public static void main(String[] args) { // In Java 6 and earlier List< Integer> list = new ArrayList< Integer> (); list.add(12); for (Integer element : list) { System.out.println(element); } // In Java 7 List< Integer> list2 = new ArrayList< > (); // Here, diamond is used list2.add(12); for (Integer element : list2) { System.out.println(element); } } }

输出:
12 12

类型推断和泛型构造函数你可以在通用类和非通用类中创建通用构造函数。在下面的示例中, 我们创建了一个泛型类型构造函数。
class GenericClass< X> { < T> GenericClass(T t) { System.out.println(t); } } public class TypeInference { public static void main(String[] args) { GenericClass< String> gc2 = new GenericClass< > ("Hello"); } }

输出:
Hello

    推荐阅读