虽然学了一段时间的Scala了,但是总觉得基础不是太扎实,还有很多的基础知识比较模糊,于是最近又打算重新学习基础.
Scala中的三种集合类型包括:Array,List,Tuple.那么到底这三种有哪些异同呢?说实话,我之前一直没弄明白,所以今天特意花了点时间学习了一下.
相同点:
1.长度都是固定的,不可变长
2.早期的Scala版本,Array、List都不能混合类型,只有Tuple可以,2.8版本以后,3者的元素都可以混合不同的类型(转化为Any类型)
不同点:
1.Array 中的元素值可变,List和Tuple中的元素值不可变
2.Array一般是先确定长度,后赋值,而List和Tuple在声明的时候就需要赋值
3.Array取单个元素的效率很高,而List读取单个元素的效率是O(n)
4.List和Array的声明不需要new关键字,而Tuple声明需要使用new
5.当使用混合类型时,Array和List会将元素类型转化为Any类型,而Tuple则保留每一个元素的初始类型
以上就是我今天所学习到的一些内容,也可能还不是太准确,仅为个人观点,若有不足,欢迎指正.
参阅: http://blog.csdn.net/lyrebing/article/details/20362227
时间: 2024-10-07 08:01:44