Java 使用codeModel比较两个对象
我有以下代码,但我试图不使用Java 使用codeModel比较两个对象,java,sun-codemodel,Java,Sun Codemodel,我有以下代码,但我试图不使用direct()方法 JExpression jx = JExpr.direct("java.lang.Thread.currentThread() == android.os.Looper.getMainLooper().getThread()"); 我曾尝试查找有关使用\u if()的文档,我能够找到几个简单的文档,但我不知道如何让它在不使用direct()的情况下生成类似的内容。有人知道怎么做吗,或者知道一个展示一些例子的好地方吗?我试着在javadocs中搜
direct()
方法
JExpression jx = JExpr.direct("java.lang.Thread.currentThread() == android.os.Looper.getMainLooper().getThread()");
我曾尝试查找有关使用
\u if()
的文档,我能够找到几个简单的文档,但我不知道如何让它在不使用direct()的情况下生成类似的内容。有人知道怎么做吗,或者知道一个展示一些例子的好地方吗?我试着在javadocs中搜索,但没有找到任何好的结果。很抱歉延迟回复
在生成代码时,需要对类进行引用,例如
java.lang.Thread
android.os.Looper
JCodeModel programContext = new JCodeModel();
JExpression ifConditionExpression = JExpr.(programContext.ref(java.lang.Thread).staticInvoke("currentThread").eq(programContext.ref(android.os.Looper).staticInvoke("getMainLooper").invoke("getThread")))
现在将此表达式用作if()表达式
希望它能解决这个问题