数组分为固定长度数据和不固定长度数据。
* 固定长度数组:初始化时长度固定,后面不能在更改长度;
* 不固定长度数组:可以根据需要随时动态地改变数组长度;
* 无论是固定长度数组,还是不固定长度数组,其元素是可以被更新的;
```scala
import scala.collection.mutable.ArrayBuffer
object HelloWorld {
def main(args: Array[String]): Unit = {
/********** 1. 固定长度数组由 Array 定义 ************/
// 数组创建方式1
var a1:Array[Int] = new Array[Int](5)
a1(0) = 1 // 下标从 0 开始
a1(1) = 2
a1(2) = 3
a1(0) = 100
println(a1(0)) // 100
// 数组创建方式2
var a2 = Array(1, 2, 3)
// 数组创建方式3
var a3 = Array.range(1, 10, 2) // 从1到10,步长为2
a3.foreach(println) // 遍历,输出为:1 3 5 7 9
/********** 2. 不固定长度数组由 ArrayBuffer 定义 ************/
var ab = new ArrayBuffer[Int]()
ab.append(100) // 调用append追加元素
ab.append(200)
ab += 300 // 调用 += 追加元素
println(ab(0)) // 100
println(ab) // ArrayBuffer(100, 200, 300)
println(ab.toString()) // ArrayBuffer(100, 200, 300)
}
}
```
- Scala是什么?
- Scala特性
- 开发环境搭建
- 环境搭建
- windows下的环境搭建
- IntelliJ IDEA环境搭建
- Scala关键字
- Hello, World
- 数据类型
- 数据类型
- 数据类型层次结构
- 字面量
- Null类型
- Nothing类型
- Unit类型
- 变量与常量
- type定义类型别名
- 字符串插值器
- 条件控制
- 循环控制
- 数组
- 元组
- 集合
- 集合分类
- List常用操作
- Set常用操作
- Map常用操作
- 函数
- 函数声明与调用
- 函数与方法的区别
- 函数注意事项
- 匿名函数
- 可变参数
- 高阶函数
- 中置表达式
- 函数嵌套
- 函数科里化
- 隐式参数
- 隐式函数
- 闭包
- 类和对象
- Java与Scala的比较
- 有关类与对象概念
- 类
- 类的定义和调用
- 类的继承
- 抽象类
- 单例对象
- 伴生对象和伴生类
- 特质
- 定义特质
- 混入特质
- 抽象类与特质的选择
- 自身类型
- 依赖注入
- this别名
- 样例类
- 枚举类
- 泛型类
- 包与包对象
- 模式匹配
- 基本语法
- 匹配模式
- 偏函数
- 注解
- 运算符
- 正则表达式
- 隐式类
- 异常处理
- 高级类型
- 结构类型
- 复合类型