[英]Java sun CodeModel math operations
有人知道如何在codeModel中執行數學運算嗎? 我到過很多地方,無法解決。 我有我生成的類,我想例如添加2個變量(我已經使用Long.staticInvoke("sum")
,但是我的意思是添加,減去,乘法,除法和所有這些東西)。 我要實現的樣本輸出:
class C {
int a;
int b;
C() {
a=5;
b=7;
}
int foo() {
return (a+b)/4*7;
}
}
我有這樣的事情:
try {
String className = "C";
JCodeModel model = new JCodeModel();
JDefinedClass jdc = model._class(className);
JFieldVar a = jdc.field(0, Integer.TYPE, "a");
JFieldVar b = jdc.field(0, Integer.TYPE, "b");
JMethod constructor = jdc.constructor(0);
constructor.body().assign(a, JExpr.lit(5));
constructor.body().assign(b, JExpr.lit(7));
JMethod foo = jdc.method(0,Double.TYPE,"foo");
foo.body()._return(/* WHAT GOES HERE? */);
File file = new File("./src/types/");
file.mkdirs();
model.build(file);
} catch(Exception e) {
e.printStackTrace();
}
有任何想法嗎?
JOp
課程將為您提供幫助。 (a+b)/4*7
由以下生成:
JOp.div(JOp.plus(a, b), JOp.mul(JExpr.lit(4), JExpr.lit(7)))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.