List<List<String>> results = new ArrayList<>();
在java中经常会看到这种写法,定义的类型和new后边的类型不一样,list后还嵌套着list,这个到底是什么意思?
闭关修行中......
這不就是List每個元素還是List嘛。後面沒寫泛型因為可以省略。
java 7 還是8 之後 泛型在實例化的時候 內可以省略。 至於list 應該類似一個二維數組 不知這樣是否用過 map> 一對多關係 經常 用到。
樓上兩位都答不對題。 。 。 題主問的是1.為什麼前面類型是List,而後面new的是ArrayList;2、list嵌套著list是什麼意思。 講道理,這個問題是你學物件導向第一個禮拜就能夠接觸到的知識吧。 results的聲明類型是List,但它的實際類型是ArrayList。 ArrayList是List的實作類,就是子類別的意思。 results的具體的類型在程式編譯期是無法確定的,而是在運行期,根據results的實際類型進行類型的動態綁定,這叫做多態。 List中嵌套著List的意思就是,這個集合中的元素依然是一個個的集合。
這不就是List每個元素還是List嘛。後面沒寫泛型因為可以省略。
java 7 還是8 之後 泛型在實例化的時候 內可以省略。
至於list
應該類似一個二維數組> 一對多關係 經常 用到。
不知這樣是否用過 map
樓上兩位都答不對題。 。 。
題主問的是1.為什麼前面類型是List,而後面new的是ArrayList;2、list嵌套著list是什麼意思。
講道理,這個問題是你學物件導向第一個禮拜就能夠接觸到的知識吧。
results的聲明類型是List,但它的實際類型是ArrayList。 ArrayList是List的實作類,就是子類別的意思。 results的具體的類型在程式編譯期是無法確定的,而是在運行期,根據results的實際類型進行類型的動態綁定,這叫做多態。
List中嵌套著List的意思就是,這個集合中的元素依然是一個個的集合。