1. 在scala中"_" 的含義
import scala.list._
":_*"作為乙個整體,告訴編譯器你希望將某個引數當作引數序列處理;
def sum(nums:int*):int=
sum(1 to 5:_*)
val vector = vector(1 to 10:_*)
指代集合的每乙個元素;
val list = list(1,2,3,4)
list.filter(_%2==0).map(2*_)
在元祖中,可以使用方法_1,_2,_3訪問組員;
val t = (1,2,3)
t._1
t._2
t._3
使用模式匹配可以用來獲取元組的組員;
val t = (1,2,3)
val(f1,f2,_) = t
val(f,_,_) = t
val arr = array(1,2,3,4,5)
val array(a1,a2,_*) = arr
識別符號;
val s_1 = ""
代表的是某一型別的預設值(int 0,double 0.0,refer null);
object test
2. 在scala中"*"的含義
3. 其他的一些令人髮指的符號
val list = "a"::"b"::nil
val otherlist = "00"::list
符號":::",連線兩個列表集合
val list1 = list(1,2,3)
var list2 = list(4,5,6)
val list3 = list1:::list2
符號":+",列表追加元素,頭部
var list = list(1, 2, 3, 4)
list = list :+ 0
符號"+:",列表追加元素,尾部
var list = list(1, 2, 3, 4)
list = 5 +: list
符號"++",連線兩個序列
val seq1 = seq(1,3,4)
val seq2 = seq(5,7,9)
val seq3 = seq1++seq2
符號"<-",集合遍歷
val seq = seq(1,3,4,6,7)
for(item<- seq) println(item)
符號"->",構造乙個二元元祖
val t1 = 1->"a"
val map = map(t1, 2->"b")
符號"=>",匿名函式
val add = (x:int,y:int) => x+y
def add01(x:int,y:int) = x+y
符號"+=",字串拼接,新增元素
var s1 = "abc"
s1+="123"
var map = map((1, 'a'), (2, 'b'))
map += (3 -> 'c')
符號"++=",字串拼接
var s = "a"
s += "b"
s ++= "c"
符號"-=",刪除元素
var map = map((1, 'a'), (2, 'b'))
map -= (1, 'a')
符號"[t<:upperbound]",泛型上界,t必須是子類
case class animal(name: string)
class print[t<:animal]
符號"[t>:lowerbound]",泛型下界,t必須是父類
case class animal(name: string)
case class dog(override val name:string, nickname: string) extends animal(name: string)
class print[t>:dog]
符號"[t<%viewbound]",泛型視界
class print[t<%string]
符號"[t:contextbound]",泛型上下文界
class print[t:string]
符號"[+t]",泛型協變
class print[+t]
符號"[-t]",泛型逆變
class print[-t]
符號"[t]",泛型不變
class print[t]
4. 方法或者函式呼叫的"."、" 「、」()"、"{}"問題
list(1,2,3).size
"123".length
"123".length()
方法呼叫或者函式呼叫的".「是可以省略的,省略的同時需要加入乙個」 ";
list(1,2,3) size
val v = vector(1 to 10:_*)
v map(_+1) map(_*2)
v.map(_+1).map(_*2)
println("hello world" substring(0, 3) touppercase() indexof "h")
當函式只接收乙個引數時,就可以使用"{}「代替」()"
def add(i:int)(j:int=>int)=j(i)
val a1 = add(1)
println(a1)
def p(x:int) = println(x)
p(11)
p
演算法符號學習記錄 符號 學習記錄
演算法符號學習記錄 符號 學習記錄 1 西塔 緊確界。相當於 同階 2 o 大歐 上界。相當於 3 o 小歐 非緊的上界。相當於 4 大歐公尺伽 下界。相當於 5 小歐公尺伽 非緊的下界。相當於 o f n 描述的是數量級別與f n 同階或者比f n 更低階,比如乙個t n n那麼它既可以寫成t n...
linux符號學習
有時候很想知道某個具體的符號是哪種型別的符號,未初始化的全域性資料?已經初始化的全域性資料?還是 段?使用nm命令可以列出符號 符號型別以及符號的絕對位址之間的對應關係。nm可以列出main 可能是乙個目標檔案 或者是共享庫檔案或者是乙個可執行檔案等 中的符號對應關係。sh nm s main 檢視...
ruby 符號學習筆記
方法後面加個?可能 表示返回乙個boolean型別 方法後面加個!可能 表示會修改原來的物件內容,否則就是不改變原來的物件,只是複製乙份 變數前面加個 可能表示全域性變數 變數前面加個 表示例項變數 變數前面加個 表示類變數 begin here is comments comments again...