日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Scala声明变量、常用类型、条件表达式、块表达式、循环

發(fā)布時間:2024/9/27 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Scala声明变量、常用类型、条件表达式、块表达式、循环 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、 Scala基礎

1. 聲明變量

package cn.toto.scala/*** Created by toto on 2017/6/27.*/ object VariableDemo {def main(args: Array[String]): Unit = {//使用val定義的變量值是不可變的,相當于java里用final修飾的變量,不可以再改變參數(shù)的值val i = 1println("參數(shù)i的值是:" + i)//使用var定義的變量是可變的,在scala中鼓勵使用valvar s = "hello";println("參數(shù)s的值是:" + s)//修改一下s的值s = "hello word";println("修改后的參數(shù)s的值是:" + s)//Scala編譯器會自動推斷變量的類型,必要的時候可以指定類型//變量名在前,類型在后val str : String = "toto";println("帶有參數(shù)類型說明的變量str的值是:" + str);} }

運行結果:

參數(shù)i的值是:1 參數(shù)s的值是:hello 修改后的參數(shù)s的值是:hello word 帶有參數(shù)類型說明的變量str的值是:toto

2. 常用類型
Scala和Java一樣,有7種數(shù)值類型Byte、Char、Short、Int、Long、Float和Double(無包裝類型)和一個Boolean類型
3. 條件表達式
Scala的的條件表達式比較簡潔,例如:

package cn.toto.scala/*** Created by toto on 2017/6/27.*/ object ConditionDemo {def main(args: Array[String]): Unit = {val x = 1//判斷x的值,將結果賦給yval y = if(x > 0) 1 else -1//打印y的值println(y)//支持混合類型表達式val z = if(x > 1) 1 else "error"//打印z的值println(z)//如果缺失else,相當于if(x > 2) 1 else ()val m = if(x > 2) 1println(m)//在scala中每個表達式都有值,scala中有個Unit類,寫做(),相當于Java中的voidval n = if(x > 2) 1 else ()println(n)//If和else ifval k = if(x < 0) {0} else if(x >= 1) {1} else {-1}println(k);} }

運行結果:

1 error () () 1

4. 塊表達式

package cn.toto.scala/*** Created by toto on 2017/6/27.*/ object BlockExpressionDemo {def main(args: Array[String]): Unit = {val x = 0//在scala中的{}中可包含一系列表達式,快中最后一個表達式的值就是塊的值,下面就是一個塊表達式val result = {if(x < 0) {-1} else if(x >= 1) {1} else {"error"}}//result的值就是塊表達式的結果println(result)} }

運行結果:
error

5. 循環(huán)
在scala中有for循環(huán)和while循環(huán),用for循環(huán)比較多
for循環(huán)語法結構:for (i <- 表達式/數(shù)組/集合)

package cn.toto.scala/*** Created by toto on 2017/6/27.*/ object ForDemo {def main(args: Array[String]): Unit = {//for(i <- 表達式),表達式1 to 10返回一個Range(區(qū)間)//每次循環(huán)將區(qū)間中的一個值賦給ifor(i <- 1 to 10) {print(i + " ")}println("")//for(i <- 數(shù)組)val arr = Array("a","b","c")for(i <- arr) {print(i + " ");}println("")//高級for循環(huán)//每個生成器都可以帶一個條件,注意:if前面沒有分號for(i <- 1 to 3; j <- 1 to 3 if i != j) {print((10 * i + j) + " ")}println()//for推導式:如果for循環(huán)的循環(huán)體以yield開始,則該循環(huán)會構建出一個集合//每次迭代生成集合中的一個值val v = for(i <- 1 to 10) yield i * 10println(v)} }

運行結果:

1 2 3 4 5 6 7 8 9 10 a b c 12 13 21 23 31 32 Vector(10, 20, 30, 40, 50, 60, 70, 80, 90, 100)

總結

以上是生活随笔為你收集整理的Scala声明变量、常用类型、条件表达式、块表达式、循环的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。