package com.scala.stu
import scala.collection.mutable.map
import scala.io.source
/** * 第二章例子
*/object t_002
/*** 例子一,陣列的使用,使用的是獲取匿名函式的方法建構函式體
*/def t_arr():unit =
//1+1 被轉化成(1).+(2)形式
print((1).+(2))
} /**
*list的例子
*/def t_list(): unit =
val onetwothree = 1 :: twothree//列表類中最常用的操作符『::』,他可以把新元素
//組合到現有列表的最前端,然後返回執行結果的新列表
//1 :: twothree 轉化成twothree.::(1)
println(onetwothree)
val onetwothree2 = 1 :: 2 :: 3 :: nil//nil是空列表的縮寫,可以用cons操作符把所有元素都串起來
println(onetwothree2)
} /**
* 注:常用
* 元組的例子,與列表不同,元組可以包含不同型別的元素
*/def t_tuple(): unit =
/*** map的例子
*/def t_mp(): unit =
/*** 從檔案裡讀取文字行
*/def t_file():unit =
//將從檔案中讀取的列舉器轉化成乙個列表器,這樣就可可以把整個檔案存入到記憶體當中供我們隨時使用
val lines = source.fromfile("i:/doc/1.txt").getlines.tolist
var maxwidth = 0
for(line <-lines)
maxwidth = maxwidth.max(widthoflength(line))//函式的比較兩個值得最大值
println("\n最大的行:"+ maxwidth)
//reduceleft方法把傳入的方法引數應用於lines的第一,二個元數,產生結果,然後再應用於這個結果和lines
//接下去的乙個元素,依次類推直至整個列表。最後返回最後應用的結果
val longestline = lines.reduceleft(
(a,b) => if(a.length > b.length) a else b
)val maxwidth2 = widthoflength(longestline)
println("最大行數:"+maxwidth2)
} /**
* 統計文字的最大長度的行數
* 使用函式是的函式
*/def widthoflength(s: string) = s.length().tostring().length
}
Scala學習筆記
scala學習筆記 一.scala中集合的常用方法 首先定義兩個陣列集合,用於測試 scala val arr1 array 1,2,3,4 arr1 array int array 1,2,3,4 scala val arr2 array 3,4,5,6 arr2 array int array ...
Scala學習筆記
1 閉包 var a 3 var addfun x int x a var b addfun 10 println b addfun 就是個和物件無關的函式,區域性變數,使用方法和函式一樣,但是好像不推薦這種寫法。2 類的建立,簡單使用abstract class bparent 構造函式引數會自動...
Scala 學習筆記
object a val u fab 15,list 1,1 val f p int print p t 變長引數 def sum nums int int int def main args array string unit def f p int int print f 4 object ab...