我想知道StringTemplate是否支持數字增量。
情況是:
輸入:是具有「isKey()和getName()」getter的對象數組。
輸出應爲:(i = 0; IF obj.getKey()THEN ps.setObject(I ++,obj.getName)!)ENDIF):
ps.setObject(1,"Name");
StringTemplate:如果條件爲true,則增加值
ps.setObject(2,"Name");
ps.setObject(3,"Name");
...
目前我有下一個ST:<objs:{<if(it.key)><else>ps.setObject(<i>, <it.name;>);<"\n"><endif>}>
並在輸出的情況下,如果1st是關鍵:
ps.setObject(2,"Name");
ps.setObject(3,"Name");
ps.setObject(4,"Name");
...
問題現在我需要找到一種方法來取代'我'的東西,只會在條件爲真時纔會增加。
PLS的建議誰面臨這個問題的王!
THX你的迴應,這是一種方式是我的一個備份計劃。同時我也在跳槽,ST會對這些案件提供任何支持。如果手動準備好所有輸入以便打印,那麼,恕我直言,StringTemplate不是那麼適合。 – SairuS
@SairuS鑑於ST遵守MVC模式,這是正確的做法。這就是我在使用ST的最後一份工作時的做法。 – dasblinkenlight
@SairuS「如果手動準備好所有輸入以便打印,那麼,恕我直言,StringTemplate就不那麼符合」ST的想法是將輸出依賴從您的代碼移入您的運行時。您可以設計一次模型(即「手動執行所有輸入」),然後編寫多個ST來爲您的項目生成C++,Java和HTML文檔,所有這些都不需要更改一行Java代碼。 – dasblinkenlight