Scala学习第五天数组
生活随笔
收集整理的這篇文章主要介紹了
Scala学习第五天数组
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
2019獨角獸企業(yè)重金招聘Python工程師標準>>>
package com.learn.scalaimport scala.collection.mutable.ArrayBuffer/*** Scala學習第五天* Scala中有兩種類型的數(shù)組,一種是Array定長,另一種是ArrayBuffer變長數(shù)組* Array與ArrayBuffer的區(qū)別類似于Java中數(shù)組與ArrayList的區(qū)別* Created by zhuqing on 2017/2/24.*/ object Day5Array {def main(args: Array[String]): Unit = {/*** Array有兩種初始化方式*///1. new Array[Int](10) ; 長度為10的Int類型的數(shù)組,所有的值為nullval arr = new Array[Int](10);println(arr.length);//打印10//2. Array[Int](10,9,...) ; 長度為2的Int類型的數(shù)組,并且這個數(shù)組的第一個是10,第二是9 .其實是使用了伴生對象的apply方法val arr1 = Array[Int](10, 9);println(arr1.length); //打印2/*** 更多關于Array的操作看API:* http://www.scala-lang.org/api/current/scala/Array.html*///Array數(shù)組的賦值取值arr(0) = 10;arr(1)=9println(arr(0)+":"+arr(1));//打印10:9/*** ArrayBuffer與Array初始化類似*///與Java的ArrayList,只是初始化了空間,但是真實的長度是0val arrBuff = new ArrayBuffer[Int](10)println(arrBuff.length); //打印0val arrBuff2 = ArrayBuffer[Int](10, 9)println(arrBuff2.length); //打印2/**** arrBuff的賦值與Array不一樣 使用insert方法,第一個參數(shù)是位置,從第二個以后是值.* 方法的定義insert(n : Int, elems : A*)* 關于ArrayBuffer的API:http://www.scala-lang.org/api/current/scala/collection/mutable/ArrayBuffer.html*/arrBuff.insert(0,10,9);println(arrBuff(0)+":"+arrBuff(1));//打印10:9/*** ArrayBuffer的幾個常用的方法*/val arrayBuffer = this.createArrayBuffer()//remove(index:Int) 移除index位置的數(shù)據(jù),后面的數(shù)據(jù)向前移動一個println(arrayBuffer(0)) //打印10//移除后后面數(shù)據(jù)向前移動一位arrayBuffer.remove(0);println(arrayBuffer(0)) //打印9//ArrayBurffer后面拼接1到10的區(qū)間Range , Range實現(xiàn)了TraversableOncearrayBuffer ++= 1 to 10;printlnArr(arrayBuffer)//打印9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 10var arrayB = new ArrayBuffer[Int](20)//arrayB后面再拼接一個ArrayBuffer,ArrayBuffer實現(xiàn)了TraversableOncearrayB ++= arrayBufferprintlnArr(arrayB)//打印9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 10//ArrayBuffer也可以用++= 拼接一個數(shù)組,但是從API看++= 方法中的參數(shù)是TraversableOnce,// 可能在這里Array自動轉換了吧,這里誰要是知道原理,可以講一下。arrayB ++= arr1printlnArr(arrayB)//打印9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 10 10 9}/*** 創(chuàng)建一個1到10的ArrayBuffer* @return*/def createArrayBuffer() : ArrayBuffer[Int] = {//arrBuff設置值 :_*的意思可以看前一天的ArrayBuffer[Int]((1 to 10).reverse:_*)}def printlnArr(arr:ArrayBuffer[Int]): Unit ={println()//數(shù)組的遍歷for(a <- arr){print(a+" ")}println()} }?
轉載于:https://my.oschina.net/u/587323/blog/846129
總結
以上是生活随笔為你收集整理的Scala学习第五天数组的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [01分数规划]【学习笔记】
- 下一篇: 服务器负载均衡的部署方式