由于我真的不知道如何形容,所以很难,但我会尽力的。
在上下文中,我正在使用2个类
我收到了一个Customer
数组,我想将其放入Vector<Person>
中。当我编写此代码时,AndroidStudio会像这样自动完成它:
Vector<Person> persons = Arrays.<Person>asList(customers)
我的问题是:<Person>
在Arrays.
和asList
之间是做什么的,因为删除它不会改变任何东西,因为Java已经将类型从Customer
推断为Person
。
在我看来,它表明asList
返回的列表的类型,但我仍然不太了解它的用处。
有人可以解释它是什么,它叫什么,它是真正的目的吗?
答案 0 :(得分:1)
它适用于类型引用。 如果您像下面这样打电话。
Arrays.<Person>asList(customers)
编译器将T替换为Person类
// definition
static <T> List<T> asList(T... a)
// changed
static <Person> List<Person> asList(Person... a)