Điều gì sẽ tương đương với Java 8 :: (double colon operator) trong Groovy?Tương đương Groovy của toán tử Java 8 :: (dấu hai chấm)
Tôi đang cố gắng để dịch ví dụ này trong groovy https://github.com/bytefish/PgBulkInsert
Nhưng phần lập bản đồ không làm việc theo cách tương tự như Java 8:
public PersonBulkInserter() {
super("sample", "unit_test");
mapString("first_name", Person::getFirstName);
mapString("last_name", Person::getLastName);
mapDate("birth_date", Person::getBirthDate);
}
Có vẻ toán tử con trỏ phương thức Groovy '. &' Là gần nhưng mong đợi một cá thể của lớp khai báo. – manouti
Thật vậy, tôi sẽ cần một "Giao diện chức năng" cho một lớp Groovy. https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html – Wavyx
Thật khó để nói mà không nhìn thấy mã cho 'mapString()' và 'mapDate() của bạn 'phương pháp, nhưng có thể một cái gì đó như thế này sẽ làm việc:' mapString ("first_name", {it.firstName} là chức năng) '. Nó không hiệu quả như ký hiệu giao diện function-pointer-to-lambda-to-Functional trong java 8, nhưng tôi nghĩ nó sẽ làm việc giống nhau. – BalRog