Tôi thấy một số mã scala gán "_" cho một trường lớp, có nghĩa là gì? Cảm ơnđiều đó có nghĩa là gán "_" vào trường trong scala?
private var tk: TaggedKey = _
Tôi thấy một số mã scala gán "_" cho một trường lớp, có nghĩa là gì? Cảm ơnđiều đó có nghĩa là gán "_" vào trường trong scala?
private var tk: TaggedKey = _
Điều này có nghĩa là: gán giá trị mặc định. Giá trị mặc định được định nghĩa là null
, 0
hoặc false
tùy thuộc vào loại mục tiêu.
Nó được mô tả trong 4.2 Khai báo biến và các định nghĩa của The Scala Language Specification:
Một định nghĩa biến
var x : T = _
có thể xuất hiện chỉ như là một thành viên của một bản mẫu. Nó giới thiệu một trường có thể thay đổi với loại T và giá trị mặc định ban đầu. Giá trị mặc định phụ thuộc vào loại T như sau:
0
- nếuT
là Int hoặc một trong các loại subrange của nó,
0L
- nếuT
là Long,
0.0f
- nếuT
là Float ,
0.0d
- nếuT
là đôi,
false
- nếuT
là Boolean,
()
- nếuT
là Unit,
null
- cho tất cả các loại khácT
.
http://stackoverflow.com/questions/9581444/first-steps-into-scala/9612735#9612735 (Tôi đã thử tổng quan về ~ 10 tập quán "_" bằng ngôn ngữ: –