Scala基础代码展示

发布于:2025-03-30 ⋅ 阅读:(114) ⋅ 点赞:(0)

变量的定义

object VariableTest {

  def main(args: Array[String]) {

    //使用val定义的变量值是不可变的,相当于java里用final修饰的变量

    val i = 1

    //使用var定义的变量是可变的,在Scala中鼓励使用val

    var s = "hello"

    //Scala编译器会自动推断变量的类型,必要的时候可以指定类型

    //变量名在前,类型在后

    val str: String = "world"

  }

}

一、字符串的插值操作

var name = "amy"

var src = s"hello ${name}"

val name1 = "amy"

val name2 = "mike"

println(s"hello,${name1 +","+ name2}!")

  • 条件表达式

val x = 1

val y = if (x > 0) 1 else -1

println("y=" + y)

val z = if (x > 1) 1 else "error"

println("z=" + z)

val m = if (x > 2) 1

 println("m=" + m)

 val n = if (x > 2) 1 else ()

 println("n=" + n)

val y = if(1>1) 1 else "error"

val y = if(x>1) 1

三、类型的转换

val num = "234"

val num_int = num.toInt

println(num_int+11)

四、循环语句

1、for循环

for (i <- 1 to 12) println(i)

1 to 15

for (i <- 1 until 20) println(i)

1 until 20

遍历字符串:

val str = "six"

for(c <- str) println(c)

for (i <- 0 until str.length) println(str.charAt(i))

遍历数组:

val arr = Array(1,2,3,4,5,6,7,8,9)

for(a <- arr) println(a)

for(i <- 0 until arr.length) println(arr(i))

双重循环:

for(i <- 1 to 3;j <- 1 to 3 if i != j) println(i*10+j)

数组操作:

对数组中的每个数乘以10,生成一个新数组:

val arr = Array(1,2,3,4,5,6,7,8,9)

 for(i<- arr)println(i*10)

for(i<- 0 until arr.length)println(arr(i)*10)

for (i <- arr) yield i*10

 arr.map(_ * 10)

arr.map(x => x *10)

for(i<- arr if i%2 ==0)println(i*100)

for (i <- arr if i%2==0) yield i*100

arr.filter(m => m%2==0).map(n => n*100)

2、while循环

var n = 10

while(n > 0) {

     | println(n)

     | n -= 1

     | }

3、do while 循环

var n =2

 do{

     | println(n)

     | n+=2

     | }while(n<20)

五、操作符重载

val a = 1.+(4)

def +(x : Int,y : Int):Int  = { x + y }

$plus(100,300)


网站公告

今日签到

点亮在社区的每一天
去签到