2011-10-12 120 views

回答

34

我从来没有使用过Velocity,但其VTL reference guide表示调用方法是使用$customer.getAddress()${purchase.getTotal()}完成的。所以我会用${myArrayList.size()}

+6

该引用是我在一段时间内看到的最有趣的示例代码之一。不得不从我的屏幕上清洗咖啡... – Namphibian

12

集合可以像任何其他对象一样访问,因此$collection.size()将包含一个值。

数组是special cased表现得像List,所以虽然$array.length不起作用,$array.size()作品。

在旧版本的Velocity(1.6之前版本)中,您将使用ListToolArrayTool。从the developer guide

0

引用:

对象[]普通对象阵列,没有多少需要被在这里表示。 Velocity会在内部将你的数组封装在一个提供Iterator接口的类中,但这不应该让你成为程序员或者模板作者。更令人感兴趣的是,Velocity现在允许模板作者将数组视为固定长度列表(从Velocity 1.6开始)。这意味着他们可以在数组和标准java.util.List实例上调用像size(),isEmpty()和get(int)这样的方法,而不用关心自己的差异。

因此使用size()java.util.List和java数组上工作得很好。