数组
package com.scala.study
import scala.io.Source
import scala.collection.mutable.ArrayBuffer
object HelloScala {
def main(args: Array[String]) {
var nums = new Array[Int](10)
var strings = new Array[String](10)
var s = Array("hello", "world")
s(0) = "good bye"
val b = ArrayBuffer[Int]()
b += 1
b += (1, 2, 3, 4)
b ++= Array(8, 13, 21)
b.trimEnd(5)
b.remove(2)
b.insert(2, 1, 2)
for (i <- 0 until b.length) println(i)
val c = Array(2, 3, 4, 5, 6)
//创建数组
val result = for (elem <- c) yield 2 * elem
for (elem <- c if elem % 2 == 0) yield 2 * elem
c.filter(_ % 2 == 0).map(2 * _)
Array(1, 2, 3, 4, 5, 6).sum
ArrayBuffer("fdsf", "fdsfds").max
ArrayBuffer(1, 2, 3, 4).sorted
var e = Array("a", "b")
e.mkString("and")
e.mkString("<", ",", ">")
scala.util.Sorting.quickSort(e)
var matrix = Array.ofDim[Double](3, 4)
matrix(2)(1) = 42
var triangle = new Array[Array[Int]](10)
for (i <- 0 until triangle.length)
triangle(i) = new Array[Int](i + 1)
}
}
Map,Tuple,Zip
package com.scala.study
import scala.io.Source
import scala.collection.mutable.ArrayBuffer
object HelloScala {
def main(args: Array[String]) {
//Map不可变
val map = Map("book" -> 10, "gun" -> 18, "ipad" -> 1000)
for ((k, v) <- map) yield (k, v * 0.9)
//可变Map
val sortedScore = scala.collection.mutable.Map("hello" -> 10, "world" -> 100)
val helloScore = sortedScore.getOrElse("earth", 100);
println(helloScore)
sortedScore += ("earth" -> 200)
sortedScore -= "hello"
val tuple = (1, 2.2, "2323", "34")
val third = tuple._3
val third1 = tuple _3
var (first, second, forth, _) = tuple
"Rocky Spark".partition(_.isUpper)
val symbols = Array("[", "-", "]")
val counts = Array(2, 5, 2)
val pairs = symbols.zip(counts)
}
}
Scala私有字段
package com.scala.study
import scala.io.Source
import scala.collection.mutable.ArrayBuffer
object HelloScala {
class Person {
//对象私有属性
private var age = 0
private[this] var privateAge= 0
def increment() { age += 1 }
def current = age
def isYounger(other:Person) = age < other.age
}
class Student {
private var privateage = 0
def age = privateage
val name = "Scala"
}
def main(args: Array[String]) {
val person = new Person()
person.increment()
person.increment()
println(person.current)
val student = new Student
println(student.age)
}
}
分享到:
相关推荐
本篇文章主要面向有一定Java开发经验的程序员,旨在帮助他们入门Scala。 ### 1. Scala简介 Scala是由Martin Odersky设计的一种静态类型的编程语言,它的名字来源于"Scalable Language"的缩写,表明它能够从小规模...
总之,"Scala入门精华讲义"是一份全面的学习资源,旨在引导初学者逐步掌握Scala的基础语法、面向对象编程特性以及在大数据处理中的应用。通过深入学习和实践,你将能够利用Scala的强大功能,开启大数据领域的探索之...
scala 入门PDF文档,编码规范文档。 Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。 Scala 运行在 Java 虚拟机上,并兼容现有的 Java 程序。
Scala入门学习教程 本资源摘要信息为 Scala 入门学习教程,旨在帮助读者快速掌握 Scala 语言的基本概念和编程技术。该教程面向具有一定编程经验的读者,尤其是 Java 语言的开发者。 知识点一:Scala 语言简介 ...
Scala入门示例
在本教程中,我们将深入探讨Scala的基础知识,帮助你快速入门。 "Scala编程中文版"这份教程可能涵盖了以下内容: 1. **基础语法**:包括变量声明、数据类型(如基本类型、引用类型、集合)、操作符和控制结构(如...
Scala入门.txt
### Scala入门知识点详解 #### 一、Scala简介与特点 **Scala**是一种融合了面向对象编程和函数式编程特性的现代编程语言。它被设计成一种可扩展的语言,旨在克服传统编程语言的一些限制,同时保持代码的简洁性和...
Scala简介&快速入门 基础语法 变量 数据类型 流程控制 操作符重载 模式匹配 函数式编程基础 函数式编程说明 函数定义/声明 函数运行机制 递归 函数注意事项和细节 过程 惰性函数和异常 面向对象编程初级...
第一部分:"Scala入门及进阶-part01-基础知识.pdf" 涵盖了Scala的基础概念。在这里,你会学习到Scala的安装与环境配置,理解Scala的基本语法,包括变量声明、数据类型(如基本类型、引用类型和集合类型)、控制结构...
5. **模式匹配**:Scala的模式匹配允许对值进行解构,用于处理多种情况。它通常与`case`关键字一起使用,创建案例类或者匹配数据结构。 6. **类型推断**:Scala具有强大的类型推断能力,可以自动确定变量或函数的...
这份“资料-scala入门到精通.zip”压缩包显然是为初学者和有一定经验的开发者设计的,旨在帮助他们全面理解和掌握Scala语言。 Scala的基础知识包括: 1. **语法特性**:Scala的语法简洁而富有表现力,它引入了...
Scala入门教程文档,原视频地址:https://www.bilibili.com/video/BV1Q5411t74z/?spm_id_from=333.337.search-card.all.click&vd_source=9d8a366730d0394fa41e3b867372fc03
Horstmann完全从实用角度出发,给出了一份快速的、基于代码的入门指南。 Horstmann以“博客文章大小”的篇幅介绍了Scala的概念,让你可以快速地掌握和应用。实际上手的操作,清晰定义的能力层次,从初级到专家级,...
02.Scala程序和Java程序对比 03.Scala环境搭建 04.Scala解释器 05.案例_做最好的自己 第二章 变量和数据类型 00.导学 01.输出语句和分号 02.Scala中的常量 03.Scala中的变量 04.字符串的定义 05.惰性赋值 06.标识符 ...
【标题】:“写给Python程序员的Scala入门教程1” 【描述】:本教程旨在帮助熟悉Python的程序员逐步学习Scala语言,特别关注如何利用已有的Python背景来理解和掌握Scala的特性和用法。教程将探讨Scala在大数据处理...
### Scala编程语言详解知识点 #### 一、Scala简介与特性 **Scala** 是一门结合了面向对象编程和函数式编程特点的多范式编程语言。它由 Martin Odersky 在瑞士洛桑联邦理工学院(EPFL)开发。Scala 的名称来源于 ...