java中宏值的计算

java中宏值的计算,java,macros,Java,Macros,就拿这个场景来说, 例如,在字符串缓冲区中,我连续地追加字符串 int a=10; sb.append("if("+a+">"+$b+"){\"checked\"}"); $b是分配给 最后根据条件满足字符串“checked” 如何评估if条件,因为当评估$b值出现时 作为$b(最终回复为价值),请帮助我。让我知道 如果你有任何疑问 public static String getStringUsingMacro(String source,HashMap hm) t

就拿这个场景来说,

例如,在字符串缓冲区中,我连续地追加字符串

 int a=10;
 sb.append("if("+a+">"+$b+"){\"checked\"}");
$b是分配给 最后根据条件满足字符串
“checked”
如何评估if条件,因为当评估
$b
值出现时 作为$b(最终回复为价值),请帮助我。让我知道 如果你有任何疑问

  public static String getStringUsingMacro(String source,HashMap hm)
      throws Exception{
WebMacro wm = new WM();
Context context=wm.getContext();

Iterator it=hm.keySet().iterator();
while(it.hasNext()){
    String key=(String)it.next();
    context.put(key,hm.get(key));
}


Template template2=new StringTemplate(wm.getBroker(),source);
template2.parse();
return template2.evaluateAsString(context);
}

看来你要做的是

if(a > b) 
    sb.append("checked");
或者如果
b
是动态计算的

int a = 10;
Future<Integer> b =
if(a > b.get()) 
    sb.append("checked");
inta=10;
未来b=
如果(a>b.get())
某人附加(“已核对”);

这个问题我已经读了三遍,我不知道你想做什么你能举一些例子吗?$b是webmacro,它基于webframe框架,我并不完全了解,但在我们的项目中可能会用到它。@BALA:Java本身没有宏。请提供更多关于用于运行此代码的框架的上下文。在上面的代码方法getStringUsingMacro中,我们传递源代码(string)hashmap有一组基于它将$b替换为某个值的值,我对这个框架不太了解,这就是为什么我不能清楚地解释它all@BALA:您至少应该提到,您使用的是WebMacro框架,Future是定义值的一种方法,以后可以使用。(例如在另一个线程中)另一种方法是使用Callable。