Intellij idea IntelliJ思想中的PsiLambdaExpression

Intellij idea IntelliJ思想中的PsiLambdaExpression,intellij-idea,intellij-plugin,Intellij Idea,Intellij Plugin,是否有现成的解决方案(实用程序)从PsiLambdaExpression获取lambda接口(函数、谓词、供应商、消费者等)?类似的内容似乎正是您想要的 import com.intellij.psi.*; ... PsiType type = PsiFunctionalExpression.getFunctionalInterfaceType; if (type instanceof PsiClassType) { PsiClass lambaInterface = ((PsiClassT

是否有现成的解决方案(实用程序)从PsiLambdaExpression获取lambda接口(函数、谓词、供应商、消费者等)?

类似的内容似乎正是您想要的

import com.intellij.psi.*;
...
PsiType type = PsiFunctionalExpression.getFunctionalInterfaceType;
if (type instanceof PsiClassType) {
  PsiClass lambaInterface = ((PsiClassType)type).resolve();
}
导入com.intellij.psi.LambdaUtil;
PsiType-functionanterfacetype=LambdaUtil.getfunctionanterfacetype(表达式,true);//表达式:Map->Map.get(1)
FunctionInterfaceType.getCanonicalText();//java.util.function.function

expression.getFunctionInterfaceType();