Scala-基础-数组

Posted ak南昌小黑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Scala-基础-数组相关的知识,希望对你有一定的参考价值。

import junit.framework.TestCase
import scala.collection.mutable.ArrayBuffer;

//数组(1)
//知识点-定义数组,变长数组
class Demo1 extends TestCase{
  
    //定义数组
    def test_^^(){
      //定义数组语法1 val 变量名 = new Array[类类型](长度) 相当于java中  int indexs [] = new int [10];
      val nums = new Array[Int](10)
      //定义数组语法2 val 变量名 = Array(具体值,用逗号分开) 相当于java中    int indexs [] = {1,2,3};
      //数组类型是推断出来的
      val cums = Array(1,2,3)
      
      //通过 数组变量(下标) 访问数组中的元素 而不是 数组变量[下标] 
      val n1 = nums(1) //相当于 int n1 = nums[1];
    }
  
    //变长数组
    def [email protected]@(){
      //定义变长数组语法1 val 变量名 = new ArrayBuffer[类类型]()  
      val nums = new ArrayBuffer[Int]()
      //尾端添加元素
      nums += 10
      //尾端添加多个元素
      nums +=(5,5,9,10)
      //尾端添加其他数组或集合
      val cums = Array(1,2,3,4,5)
      nums ++= cums
      //在指定下标插入元素
      nums.insert(1, 0)
      nums.insert(1, -1,-2,-3)
       //移除尾部2个元素
      nums.trimEnd(2)
      //移除元素
      nums.remove(2)
      //移除指定下标 几个元素
      nums.remove(1, 2)
      
      //变长数组转为固定长度数组
      nums.toArray
      //数组转为变长数组
      val kums = Array(0);
      kums.toBuffer
    }    
    
    //遍历数组
    def test_&&(){
      val cums = Array(1,2,3) 
      //正序遍历
      for(i <- 0 until cums.length) println(cums(i))
      for(i <- 0.until(cums.length)) println(cums(i))
      // 0 until 10 返回 0 到9 
      // 0 to    10 返回0 到10
      //实际上 0 until 10 底部是是用过方法调用:  0.until(10)
      val k = 0 until 10
      //倒序遍历  访问函数时 点忽略了  () 也忽略了 单个参数或者无参数的前提
      for(i <- (0.until(cums.length)).reverse) println(cums(i))
        for(i <- 0 until cums.length reverse) println(cums(i))
        //遍历 间隔 
        for(i <- 0 until cums.length) println()
        
        //增强for循环
        for(ele <- cums) println(ele)
    }
}

 

以上是关于Scala-基础-数组的主要内容,如果未能解决你的问题,请参考以下文章

Scala 基础(十四):Scala 模式匹配

2021年大数据常用语言Scala(十四):基础语法学习 数组  重点掌握

Scala基础部署数据类型及简单语法

Scala基础部署数据类型及简单语法

scala语言基础:一文带你熟悉六大数据结构

第1节 Scala基础语法:9数组