当前位置: 首页 > wzjs >正文

长沙做门户网站的公司免费域名邮箱

长沙做门户网站的公司,免费域名邮箱,什么是网站接入商,如何自己做网站及优化简介: Scala 是一种多范式编程语言,结合了面向对象编程和函数式编程的特性。它运行在 Java 虚拟机上,并且可以与 Java 代码无缝互操作。我主要记录一些我之前看过这本书的记录等。详细说一下Scala 中的一些基本数据结构,…

简介:        

Scala 是一种多范式编程语言,结合了面向对象编程和函数式编程的特性。它运行在 Java 虚拟机上,并且可以与 Java 代码无缝互操作。我主要记录一些我之前看过这本书的记录等。详细说一下Scala 中的一些基本数据结构,包括数组、列表、元组、集合和映射。

1. 数组(Array)

数组是 Scala 中最基本的数据结构之一,用于存储相同类型的元素。Scala 的数组是可变的,意味着修改数组中的元素。

创建数组

通过多种方式创建数组:

val greetStrings = new Array[String](3)
greetStrings.update(0, "hello")
greetStrings.update(1, ",")
greetStrings.update(2, "world!!\n")

这里我们创建了一个长度为 3 的字符串数组,并使用 update 方法为数组赋值。Scala 中的数组索引从 0 开始。

访问数组元素

apply 方法来访问数组中的元素:

for (i <- 0 to 2) {print(greetStrings.apply(i))
}

简洁方式创建和初始化数组:

val greetS1 = Array("hello", ",", "world!!")
for (i <- 0.to(2)) {print(greetS1.apply(i))
}

数组的不可变性

        虽然数组本身是可变的,但数组的长度是不可变的。一旦创建了一个数组,就不能改变它的大小。

2. 列表(List)

列表是 Scala 中另一种常用的数据结构,与数组不同,列表是不可变的。这意味着一旦创建了一个列表,就不能修改它的内容。

创建列表

使用 List 对象创建一个列表:

val s1 = List(1, 2)
val s2 = List(3, 4)

列表的拼接

 ::: 操作符来拼接两个列表:

val s3 = s1 ::: s2
println(s3)  // 输出: List(1, 2, 3, 4)

在列表前添加元素

使用 :: 操作符在列表的前面添加一个元素:

val s4 = 1 :: s3
println(s4)  // 输出: List(1, 1, 2, 3, 4)

3. 元组(Tuple)

元组是 Scala 中用于存储不同类型元素的数据结构。与列表不同,元组是不可变的,并且可以存储不同类型的元素。

创建元组

使用圆括号来创建一个元组:

val pari1 = (1, "22")

访问元组元素

使用 ._1._2 等方法来访问元组中的元素:

println(pari1._1)  // 输出: 1
println(pari1._2)  // 输出: 22

4. 集合(Set)

集合是 Scala 中用于存储唯一元素的数据结构。Scala 提供了可变和不可变两种版本的集合。

创建可变集合

使用 mutable.Set 来创建一个可变集合:

import scala.collection.mutable
val movieSet = mutable.Set("Li", "Wu")

添加元素

使用 += 操作符向可变集合中添加元素:

movieSet += "love"
println(movieSet)  // 输出: Set(Li, Wu, love)

不可变集合

Scala 默认的集合是不可变的,无需引入任何包即可使用:

val immutableSet = Set("apple", "banana")

5. 映射(Map)

映射是 Scala 中用于存储键值对的数据结构。Scala 提供了可变和不可变两种版本的映射。

创建可变映射

使用 mutable.Map 来创建一个可变映射:

import scala.collection.mutable
val tmap = mutable.Map[Int, String]()
tmap += (1 -> "guangzhou")
tmap += (2 -> "beijing")
tmap += (3 -> "shenzheng")
println(tmap(3))  // 输出: shenzheng

创建不可变映射

Scala 默认的映射是不可变的,你无需引入任何包即可使用:

val tiMap = Map(1 -> "hebei", 2 -> "chengde", 3 -> "shijiazhuang", 4 -> "beijing")
println(s"tiMap = ${tiMap}")  // 输出: tiMap = Map(1 -> hebei, 2 -> chengde, 3 -> shijiazhuang, 4 -> beijing)

以上就是我对这块知识点的总结,这是基础中的基础了。

IDEA里头的整体代码

自己拿着跑一跑吧

package ScalaBianchengimport java.util.Properties/*** Scala*/
object Scala01_1RuMen {def main(args: Array[String]): Unit = {val prop = new Properties()val num1 = Array("qwe", "qe", "eqe")val num2 = Array.apply("qwe", "qe", "eqe")/*** 用类型参数化数组 ARRAY* 数组:用户相同类型的对象的可变数组*/val greetStrings = new Array[String](3)greetStrings.update(0, "hello")greetStrings.update(1, ",")greetStrings.update(2, "world!!\n")for (i <- 0 to 2) {print(greetStrings.apply(i))}val greetS1 = Array("hello", ",", "world!!")for (i <- 0.to(2)) {print(greetS1.apply(i))}/*** List 列表 不可变*/val s1 = List(1, 2)val s2 = List(3, 4)val s3 = s1 ::: s2 // :::是list的一个方法,用来拼接println(s3)// :: 在前面添加一个元素val s4 = 1 :: s3println(s4)/*** 元组 不可变,但能存不同的元素,最多22个**/var pari1 = (1, "22")println(pari1._1)println(pari1._2)/*** 集合set* 分为可变集合和不可变集合,可变的引入包* += 定义在可变集合里面,*/import scala.collection.mutableval movieSet = mutable.Set("Li", "Wu")movieSet += "love"println(movieSet)movieSet.+=("0819")println(movieSet)/*** map集合,Scala 也提供了 Map 的可变 和不可变的版本,用类继承关系来区分* 创建,初始化并使用一个可变的映射*/import scala.collection.mutableval tmap = mutable.Map[Int, String]()tmap += (1 -> "guangzhou")tmap += (2 -> "beijing")tmap += (3 -> "shenzheng")println(tmap(3))//创建一个不可变映射,无需引入,因为默认的映射就是不可变的val tiMap = (1 -> "hebei", 2 -> "chengde", 3 -> "shijiazhuang", 4 -> "beijing")println(s"tiMap = ${tiMap}")}}

运行结果:

参考

《Scala编程-第三版》

http://www.dtcms.com/wzjs/37889.html

相关文章:

  • 部门网站建设情况总结矿坛器材友情交换
  • 优秀网站建设空间网络优化工具
  • aspx网站开发 案例石家庄疫情最新消息
  • 怎么用手机做刷会员网站优化关键词可以选择哪个工具
  • 网站建设有哪些方面抖音推广公司
  • 怎么用vs2017做网站网站优化排名优化
  • 成都哪里有做网站建设的怎样进行seo优化
  • 微网站哪家好外贸业务推广
  • 搜狗网站提交设计公司网站模板
  • 网站开发考核站内seo和站外seo区别
  • 如何做优酷网站赚钱营销网络推广方式有哪些
  • 外贸五金网站重庆今天刚刚发生的重大新闻
  • 用什么网站可以做链接免费建立个人网站凡科
  • 网站的模块怎么做百度搜索百度
  • brushed网站模板磁力兔子搜索引擎
  • 做整装的网站品牌营销包括哪些内容
  • 网站模版 之星百度账号怎么改用户名
  • 青海网站建设公司多少钱强强seo博客
  • 建立传媒公司网站在线资源链接
  • 万网如何做网站宁波网络推广联系方式
  • 做网站和做app那个简单企业营销模式
  • 长沙高端网站建设服务标题关键词优化技巧
  • 电子商务网站建设技巧酒店推广渠道有哪些
  • 长春手机建站模板百度竞价排名是什么意思
  • 网站开通银行支付接口外链推广平台
  • seo网站制作中国十大企业培训机构排名
  • 宜春网站开发公司电话网页制作成品模板网站
  • 可信赖的做网站长沙seo平台
  • 快递公司网站怎么做外链发布网站
  • bootstrap 网站开发目前较好的crm系统