scala
This commit is contained in:
@ -11,10 +11,10 @@
|
||||
|
||||
## 一、定长数组
|
||||
|
||||
在Scala中,如果你需要一个长度不变的数组,可以使用Array。同时需要注意以下两点:
|
||||
在Scala中,如果你需要一个长度不变的数组,可以使用Array。但需要注意以下两点:
|
||||
|
||||
- 在scala中使用`(index)`而不是`[index]`来访问数组中的元素,因为访问元素,对于Scala来说是方法调用,`(index)`相当于执行了`.apply(index)`方法。
|
||||
- scala中的数组与Java中的是等价的,`Array[Int]()`在虚拟机层面就等价于Java的`int[]`。
|
||||
- 在Scala中使用`(index)`而不是`[index]`来访问数组中的元素,因为访问元素,对于Scala来说是方法调用,`(index)`相当于执行了`.apply(index)`方法。
|
||||
- Scala中的数组与Java中的是等价的,`Array[Int]()`在虚拟机层面就等价于Java的`int[]`。
|
||||
|
||||
```scala
|
||||
// 10个整数的数组,所有元素初始化为0
|
||||
@ -71,7 +71,7 @@ object ScalaApp {
|
||||
}
|
||||
```
|
||||
|
||||
这里需要说明的是:使用`+= `在末尾插入元素是一个高效的操作,其时间复杂度是O(1)。而使用insert随机插入元素的时间复杂度是O(n),因为在其插入位置之后的所有元素都要进行对应地后移,所以在`ArrayBuffer`中随机插入元素是一个低效的操作。
|
||||
需要注意的是:使用`+= `在末尾插入元素是一个高效的操作,其时间复杂度是O(1)。而使用`insert`随机插入元素的时间复杂度是O(n),因为在其插入位置之后的所有元素都要进行对应的后移,所以在`ArrayBuffer`中随机插入元素是一个低效的操作。
|
||||
|
||||
## 三、数组遍历
|
||||
|
||||
|
Reference in New Issue
Block a user