Lambda-überladene MethodeJava

Java-Forum
Anonymous
 Lambda-überladene Methode

Post by Anonymous »

Ich bin neu im Bereich Lambdas und funktionale Schnittstellen. Ich versuche, eine RowListener-Funktionsschnittstelle (ActiveJDBC ORM) mit einem Lambda zu implementieren, erhalte jedoch einen Compilerfehler und weiß nicht wirklich warum.
So sieht die anonyme Klasse im alten Stil aus:

Code: Select all

db.find("some query", new RowListener() {
@Override
public boolean next(Map arg0) {
// TODO Auto-generated method stub
return false;
}
});
Das möchte ich tun:

Code: Select all

db.find("some query", map -> {
// whatever
});
Der Fehler, der mir angezeigt wird, ist:

Die Methode find(String, Object...) im Typ Base ist für die Argumente (String, (map) -> {}) nicht anwendbar.

Ich denke, es wird versucht, das Lambda auf eine überladene Methode von „find“ anzuwenden, die keinen RowListener als Argument verwendet, aber ich bin mir nicht wirklich sicher Warum.
Jedes Licht, das Sie hierauf werfen können, wäre hilfreich.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post