Scala:(3)数组
要点:
(1)长度固定使用Array,长度变化的则使用ArrayBuffer.
(2)提供初始值时,不使用new。
(3)用()访问元素
val a= new Array[String](10)//初始化所有疏远为null
val s= Array("Hello","World")//用初始值初始化 val b=ArrayBuffer[Int]()//一个空的数组缓冲
b+=1//在尾端添加元素1
b +=(1,2,3,5)
b ++=Array(8,13,21)//用++=操作符追加任何集合
b.trimEnd(5)//移除最后5个元素
(4)用for(elem <- arr)来遍历元素
(5)用for(elem <- arr if...)...yield .. 来将原数组转型为新数组
val result = for(elem <- a if elem %2 ==0)yield 2*elem
(6)Scala数组和Java数组可以互操作。用ArrayBuffer,使用scala.collection.JavaConversions中的转换函数
(7)多维数组
val matrix=Array.ofDim[Double](3,4)//三行,四列
//访问其中的元素,使用两对圆括号
matrix(row)(column)=42 //创建不规则的数组,每一行的长度各不相同
val triangle = new Array[Array[Int]](10)
for(i <- 0 until triangle.length)
triangle(i) = new Array[Int](i +1)
Scala:(3)数组的更多相关文章
- Scala学习——数组/映射/元组
[<快学Scala>笔记] 数组 / 映射 / 元组 一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初 ...
- Scala学习---数组
1.编写一段代码,将a设置为一个n个随机整数的数组,要求随机数介于0(包含)和n(不包含)之间 /** * Created by vito on 2017/1/11. */ object ex1 { ...
- 《快学Scala》——数组、映射和元组
数组 定长数组:在Scala中可以用Array,初始化一个定长数组.例如: val nums = new Array[Int](10) //10个整数的数组,所有元素初始化为0 val a = new ...
- Scala:数组
http://blog.csdn.net/pipisorry/article/details/52902432 ) 或var z = new Array[String](3) 以上语法中,z 声明一个 ...
- Scala学习之路 (四)Scala的数组、映射、元组、集合
一.数组 1.定长数组和变长数组 import scala.collection.mutable.ArrayBuffer object TestScala { def main(args: Array ...
- 【scala】数组和列表
一.数组Array 1.创建数组 隐式:val greetStrings = new Array[String](3); 显式:val greetStrings : Array[String] = n ...
- Scala从入门到放弃(三)Scala的数组、映射、元组和集合
1.数组 1.1定长数组和变长数组 object ArrayDemo { def main(args: Array[String]): Unit = { //初始化一个长度为8的定长数组,其数组元素均 ...
- Scala字节数组转换为数字
1. 2个字节数组转换为整数 def bytes2uint8(_bytes: Array[Byte], _offset: Int): Int = { val b0 = _bytes(_offset) ...
- Scala入门学习笔记三--数组使用
前言 本篇主要讲Scala的Array.BufferArray.List,更多教程请参考:Scala教程 本篇知识点概括 若长度固定则使用Array,若长度可能有 变化则使用ArrayBuffer 提 ...
随机推荐
- windows访问linux共享
1. 安装samba yum install samba 2. 配置samba配置文件,添加共享文件夹 vim /etc/samba/smb.conf 3. 关闭selinux vi /etc ...
- Webservice学习之——即时发布与定制发布
一.工具 myEclipse tomcat 6.0 以上版本 axis-bin-1_4.zip 二.即时发布 1.解压 axis-bin-1_4.zip 2.axis-bin-1_4.zip\axi ...
- .net 安卓IOS跨平台des加解密双向的(可以互相加解密)
#region 跨平台加解密(c# 安卓 IOS) // public static string sKey = "12345678"; // /// // /// 解密 // / ...
- Sdut 2409 The Best Seat in ACM Contest(山东省第三届ACM省赛 H 题)(模拟)
题目描述 Cainiao is a university student who loves ACM contest very much. It is a festival for him once ...
- #添加屏蔽IP LINUX
netfilter/iptables 的最大优点是它可以配置有状态的防火墙,这是 ipfwadm 和 ipchains 等以前的工具都无法提供的一种重要功能.有状态的防火墙能够指定并记住为发送或接收信 ...
- js获取任意元素到页面的距离
function getPos(obj){ var pos={left:0,top:0} while(obj){ pos.left+=obj.offsetLeft; pos.top+=obj.offs ...
- 基于IAccessible接口的QQ窗口信息获取的实现
这个技术现在已经封装成DLL免费开放给大家使用了,详情请加群221487171 可以访问官方网站下载 http://www.guihelper.com/ 主要技术(Microsoft Active A ...
- linux环境下安装php扩展
本文只提供源码安装的方法(已安装pcntl为例) 其他方法请参考:http://doc3.workerman.net/appendices/install-extension.html 1.利用php ...
- 青瓷qici - H5小游戏 抽奖机 3 效果设置
现在是万事俱备,只欠东风,好,我们一起动手,先来东风东. 烟花粒子效果 第一个来实现我们的烟花粒子效果,点击我们的粒子,按照下图方式配置. 注意此时我们已经加入了white.png作为粒子特效使用. ...
- 数据库创建&数据表创建
--第2_1题创建数据库 create database Student201038897041 on primary (name='student1', filename='F:\coures\SQ ...