2013-05-27 31 views
0

我有以下代碼,但我試圖不使用direct()方法。比較兩個對象與codeModel

JExpression jx = JExpr.direct("java.lang.Thread.currentThread() == android.os.Looper.getMainLooper().getThread()"); 

我曾嘗試使用_if()我能得到幾個簡單的人的工作查找文檔,但我不知道如何得到它來生成類似的東西,而無需使用直接的()。有誰知道如何做到這一點,或知道一個顯示一些例子的好地方?我嘗試通過javadocs挖掘,但沒有發現任何好的東西。

回答

0

很抱歉的延遲迴復,

在產生需要對類參考代碼,如

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"))) 

立即使用此表達式,如同()的表達。

希望你能解決這個問題。