2016-12-26 42 views
10

Trong Kotlin, có thể cho các tên đối số lambda trong định nghĩa của chúng.Kotlin: Các đối số lambda được đặt tên là gì?

fun example(lambda: (a: Int, b: Int) -> Int) 

Như bạn thấy, ab được có tên trong lambda. Tôi nghĩ rằng đây có thể là thông tin thực sự hữu ích cho một IDE, để tạo ra lambdas với các tên tham số được điền vào .. nhưng ít nhất với chức năng IntelliJ hoặc không tồn tại hoặc hoạt động theo cách mà tôi không biết.

Vì vậy, việc sử dụng các đối số lambda được đặt tên là gì? Họ có thay đổi đầu ra biên dịch theo một cách nào đó không? Và có bất kỳ thủ thuật bạn có thể sử dụng chúng cho?

Trả lời

11

Hiện nay, không có tính năng ngôn ngữ sử dụng các tên này, và, như xa như tôi biết, điều duy nhất mà không là thế hệ của mẫu lambda bởi các plugin IDE:

enter image description here

Sau đó Tab hoặc Nhập, và bạn sẽ nhận được lambda với tên tham số được khai báo trong định nghĩa example:

enter image description here

Ngoài ra, hãy xem sự cố này: Make use of named higher order function parameters

Các vấn đề liên quan