Scala基础03:数组

Scala数组

定长数组

声明数组的基本格式:

val arr =  new Array[T](N)

例:

val nums = new Array[Int](10)

val strs = new Array[String](10)

数组声明时若不给出值,会被初始化,初始化后同样能对数组成员进行赋值。

数组成员初始化,如Int类型的会都被初始化为0,String类型的会被初始化为null。

为数组直接赋值

基本格式:

val arr = Array( x1,x2,....xn);

例:

val s = Array(“Hello”,”World”)

访问数组元素

使用( ) ,而不是[ ] 来访问元素。

为数组元素赋值

s(1) = "Scala"

变长数组

使用变长数组需要引入包:

import scala.collection.mutable.ArrayBuffer

声明一个空的数组缓存,此时b是一个全为空的数组,数组长度为0。

val b = ArrayBuffer[Int]()

在数组尾部增加一个元素“1”。

b+=1

在数组尾部增加一系列元素“2,3”。

b+=(2,3)

将数组Array(5,8,13,21)中的元素增加在b数组尾部。

b++=Array(5,8,13,21)

移除最后3个元素

b.trimEnd(3)

在标记位为2的元素前插入元素。

b.insert(2,-2)

在标记位2的元素前插入一系列元素。

b.insert(2,-3,-5)

移除标记位为3的元素。

b.remove(3)

移出标记位为1及其之后的元素,共移除2个元素。

b.remove(1,2)

把变长数组转换为定长数组。

val c = b.toArray

把定长数组转换为变长数组

val d = c.toBuffer

遍历数组

按数组序号遍历。

for(i <- 0 until a.length) {

println(i+”:”+a(i))

}

直接遍历数组的成员(这是更好的做法)

for(i <- array) {

println(i)

}

通过遍历数组的下标获得成员

for(i <- 0 to(C.length-1) {

println(C(i))

}

每两个元素一条进行遍历

for(i <- 0 to (C.length,2) ) {

println(C(i))

}

倒序遍历

for(i <- (0 to C.length).reverse) {

println(C(i))

}

通过for语句枚举数组成员,可以实现多种数组控制,如把数组成员各加1并生成新数组:

val NEW=for(i <- C) yield i+1

这种数组生成是对应原数组类型的(定长/变长)

多维数组

val matrix = Array.ofDim[Double](3,4)  //三行,四行

val triangle = new Array[Array[Int]](10)

for (i <- 0 until triangle.length)

定长数组与变长数组

对于Scala更鼓励使用定长数组。

时间: 2024-12-25 13:58:53

Scala基础03:数组的相关文章

javaScript基础03数组..

1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>javascript基础练习03</title> 6 <script> 7 // 简单数据类型 Number String Boolean null undefined 8 9 // 复杂数据类型 对象,方法.,引用类型 10

Scala基础篇-数组和映射

定长数组 val n = new Array[Int](10) val s = new Array[String](10) val a = new Array("hello", "world") 变长数组 import scala.collection.mutable.ArrayBuffer val b = new ArrayBuffer[Int]() b += 1 b += (2,3) b ++= Array(4,5) 经常我们需要一个数组Array,但是初期不知

Scala基础

REPL 在Scala中的书籍中会提及REPL,REPL(Read-Eval-Print Loop):这被称为"读取-求值-打印"循环. 不带参数的Scala方法通常不使用圆括号,例如,StringOps类的API显示它有一个distinct方法,不带(),其作用是获取字符串中不重复的字符.调用如下: print("hello".distinct); Scaladoc 阅读Scaladoc的一些小窍门: 如果想使用数值类型,记得看看RichInt.RichDoubl

Scala学习(一)--Scala基础学习

Scala基础学习 摘要: 在篇主要内容:如何把Scala当做工业级的便携计算器使用,如何用Scala处理数字以及其他算术操作.在这个过程中,我们将介绍一系列重要的Scala概念和惯用法.同时你还将学到作为初学者如何浏览Scaladoc文档 1. 使用Scala解释器 2. 用var和val定义变量 3. 数值类型 4. 使用操作符和函数 5. 浏览Scaladoc Scala解释器 启动Scala解释器的步骤如下: 安装Scala 确保scala/bin目录位于系统PATH中 在你的操作系统中

scala 基础知识总结

在最开始处引入 log 相关的 包 import org.apache.log4j.{Logger,Level} 在需要屏蔽日志输出的地方加上这两行代码 // 屏蔽不必要的日志显示在终端上 Logger.getLogger("org.apache.spark").setLevel(Level.ERROR) Logger.getLogger("org.eclipse.jetty.server").setLevel(Level.OFF) // scala io Case

【Scala学习之一】 Scala基础语法

环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 scala-2.10.4(依赖jdk1.8) spark-1.6 Scala是一种混合功能编程语言,类似java,运行于JVM,集成面向对象编程和函数式编程的各种特性.(1)Scala可以与Java互操作:它用scalac这个编译器把源文件编译成Java的class文件,从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的

第一章 Scala基础篇

目录 一.Scala基础语法 (一) 变量.类型.操作符 1.变量申明 2.字符串 3.数据类型 4.操作符 (二)循环判断 1.块表达式 2.条件表达式 3.循环表达式 (三)方法和函数 1.方法 2.函数 3.方法和函数的区别 4.总结 二.Scala常用数据结构/集合 (一)Scala集合分类和继承体系 1.分类 2.继承体系 (二)数组 (三)元组 (四)List (五)队列 (六)Set (七)Map 一.Scala基础语法 === (一) 变量.类型.操作符 1.变量申明 ●Java

Java基础学习——数组初识(1)

Java基础学习--数组初识(1) 1什么是数组 Java中常见的一种数据结构就是数组,数组可以分为一维数组.二维数组和多维数组. 数组是由一组相同的变量组成的数据类型,数组中每个元素具有相同的数据类型,数组中的每个元素都可以用一个统一的数组名和下标来确定. 2 数组的使用 数组的一般使用步骤: 声明数组 分配内存给该数组 下面是一维数组为例: 数据类型  数组名 []: 数组名 = new 数据类型 [数据个数]: 2.1一维数组的声明与赋值 1.数组的声明 int  num [];    

SQL Server 基础 03 查询数据基础

查询数据 简单的查询 1 create table stu_info 2 ( 3 sno int not null 4 ,sname varchar(20) not null 5 ,sex varchar(2) not null 6 ,birth varchar(20) not null 7 ,email varchar(20) not null 8 ,telephone int not null 9 ,depart varchar(20) not null 10 ) 11 12 13 sele