//等号右边<>里可不写,编译器会进行类型推断, 推荐不写
ArrayList<Integer> list1 = new ArrayList<Integer>();
//等号左边可以用接口接收,<>里一定要写具体类型
List<Integer> list2 = new ArrayList<>();
//如果这样写,泛型默认是<E>, 就是Object
ArrayList arrayList2 = new ArrayList(); //等价于下面的
ArrayList<Object> arrayList3 = new ArrayList<>();