Xin chào tất cả mọi người Tôi đang cố gắng để hiểu được biểu tượng "_" trong scala, nó trông giống như một ký tự đại diện nhưng tôi không hiểu tại sao trong kịch bản nhất định.lý do tại sao scala giữ chỗ không làm việc
var l = List("a","b" ,"c")
// Works "s" works as a variable.
l.foreach(s =>
if(s=="a"){
print(s)
}
)
// Works _ takes the place of "s"
l.foreach(
print(_)
)
//So the doubt is whether "_" is a wildcard that does not work well.
l.foreach(
if(_=="a"){
print(_)
}
)
"_" phải hoạt động như biến s
, nhưng tại sao lại không?
Tôi đảm bảo 99,8973% rằng '_' hoạt động tốt. Đó là cách bạn đang sử dụng nó, hoặc những gì bạn đang mong đợi của nó, đó là vấn đề. – cHao
Bạn nên đọc http://stackoverflow.com/questions/8000903 trong số những thứ khác. Bạn đang pha trộn sử dụng dấu gạch dưới, tôi nghĩ. (Ngoài ra, dấu gạch dưới có thể được sử dụng chính xác một lần cho mỗi biến, dấu gạch dưới thứ hai cố gắng liên kết với biến thứ hai, không phải là dấu đầu tiên lần thứ hai. } 'không phải. Nếu bạn cần tham chiếu đến cùng một biến nhiều lần, hãy đặt tên nó là:' foreach {x => x * x} ').) –