您的位置:首页技术文章
文章详情页

请问各位java自带类的一些问题

【字号: 日期:2024-02-10 15:03:05浏览:49作者:猪猪

问题描述

List<List<String>> results = new ArrayList<>();

在java中经常会看到这种写法,定义的类型和new后边的类型不一样,list后还嵌套着list,这个到底是什么意思?

问题解答

回答1:

这不就是List每个元素仍然是List嘛。后面没写泛型因为可以省略。

回答2:

java 7 还是8 之后 泛型在实例化的时候 <>内可以省略。至于list<list> 应该类似一个二维数组 不知这样是否用过 map<string,list<string>> 一对多关系 经常 用到。

回答3:

楼上两位都答不对题。。。题主问的是1、为什么前面类型是List,而后面new的是ArrayList;2、list嵌套着list是什么意思。讲道理,这个问题是你学面向对象第一个礼拜就能够接触到的知识吧。results的声明类型是List,但是它的实际类型是ArrayList。ArrayList是List的实现类,就是子类的意思。results的具体的类型在程序编译期是无法确定的,而是在运行期,根据results的实际类型进行类型的动态绑定,这叫做多态。List中嵌套着List的意思就是,这个集合中的元素依然是一个个的集合。

标签: java
相关文章: