Scala _02基础
生活随笔
收集整理的這篇文章主要介紹了
Scala _02基础
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Scala基礎
1、數據類型
?
2、變量和常量的聲明
- 定義變量或者常量的時候,也可以寫上返回的類型,一般省略,如:val a:Int = 10
- 常量不可再賦值
3、類和對象
- 創建類
- 創建對象
- 對象中的apply方法
object中不可以傳參,當創建一個object時,如果傳入參數,那么會自動尋找object中的相應參數個數的apply方法。
package com.henu.scala /*** object單例對象中不可以傳參,* 如果在創建object時傳入參數,那么會自動根據參數的個數去Object中* 尋找響應的apply方法。*/ object ApplyDemo {def apply(s : String) = {println("name is " + s)}def apply(s : String,age : Int) = {println("name is " + s + ",age is " + age)}def main(args: Array[String]): Unit = {ApplyDemo("george")ApplyDemo("george",22)} }- 伴生類和伴生對象
注意點:
- if else
- for ,while,do…while
to和until 的用法(不帶步長,帶步長區別)?
package com.henu.scalaobject ForWhileDoWhileDemo {/*** to和until* 例:* 1 to 10 返回1到10的Range數組,包含10* 1 until 10 返回1到10 Range數組 ,不包含10*/def main(args: Array[String]): Unit = {println(1 to 10)//Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)println(1 to (10))//Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)println(1 to (10,2))//Range(1, 3, 5, 7, 9)println(1.to(10,2))//Range(1, 3, 5, 7, 9)println(1 until 10)//Range(1, 2, 3, 4, 5, 6, 7, 8, 9)println(1 until(10))//Range(1, 2, 3, 4, 5, 6, 7, 8, 9)print(1 until(10,3))//Range(1, 4, 7)} }創建for循環
/*** for 循環 打印1-10*/for (i <- 1 to 10){println(i)}創建多層for循環
//可以分號隔開,寫入多個list賦值的變量,構成多層for循環//scala中 不能寫count++ count-- 只能寫count+var count = 0//相當于雙層的嵌套循環for (i <- 1 to 10; j <- 1 until 10){println("i=" + i + ", j = " + j)count += 1}println(count)//90//例子:打印乘法表for (i <- 1 until 10; j <- 1 until 10){if (i >= j){print(i + "*" + j + "=" + i*j + " ")}if (i == j){println()}}for循環中可以加條件判斷,可以使用分號隔開,也可以不使用分號
for (i <- 1 to 10; if (i%2) == 0;if (i == 4)){println(i)}scala中不能使用count++,count只能使用count = count+1 ,count += 1
for循環用yield 關鍵字返回一個集合
while循環,while(){},do {}while()
//將for中的符合條件的元素通過yield關鍵字返回成一個集合var list = for (i <- 1 to 10; if (i > 5)) yield ifor (w <- list){println(w)}/*** while循環*/var index = 0while(index < 100){println("第"+index+"次while循環")index += 1}println(index)index = 0println("**************************")do {index += 1println("第"+index+"次while循環")}while(index < 100)?
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的Scala _02基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大型电商网站的页面静态化方案是如何支撑亿
- 下一篇: Scala _03方法与函数