Freemarker的第二次使用~list的元素是数组

在上次初次使用Freemarker作为模版后,我再次使用它。这次的需求是:

xml文档的某个节点的属性A和其一个子节点的某个属性B有关联,属性B的值需要随着属性A的值变化。而属性A的值有4个值,现在需要把这个节点输出4次,每次属性A和B的值分别为4个值中的一个。

面对这个需求,既然在freemarker模板中${rtcList}表示rtcList中的单个元素循环,那就试下${loscList[0]}是不是会被解析城loscList中单个元素(每个元素都是数组)这个数组内的一个值的循环。实验结果很喜人,如我所想。既然如此,那我就开始把属性A的值作为数组a[]的a[0],属性B的值存入a[1]。然后问题就解决了。

代码

public List<String[]> deallOSCandidateList(List<String> list){
List lsda=new ArrayList();
for(String i in list){
String[] da=new String[2];
da[0]=i;
String sa="1";
2.step(i.toInteger()+1,1){
sa=sa+","+it
}
da[1]=sa;
lsda.add(da);
}
return lsda;
}

模版

<RoomStay RoomTypeCode="${rtcList}" RatePlanCode="${rpcList}" LengthOfStay="${loscList[0]}" RoomCount="9">
<#-- input startdate and enddate -->
<DateSpan Start="${Start}" End="${End}"/>
<RoomRate DayPattern="${loscList[1]}">
</RoomRate>
</DateSpan>
</RoomStay>

时间: 2024-10-30 07:38:41

Freemarker的第二次使用~list的元素是数组的相关文章

js 的数组怎么push一个对象. Js数组的操作push,pop,shift,unshift JavaScript使用push方法添加一个元素到数组末 JavaScript数组函数unshift、shift、pop、push使用

push()函数用于向当前数组的添加一个或多个元素,并返回新的数组长度.新的元素将会依次添加到数组的末尾. 该函数属于Array对象,所有主流浏览器均支持该函数. 语法 array.push( item1 [,items... ] )参数 参数 描述item1 任意类型添加到当前数组末尾处的元素.items 可选参数/任意类型要添加到当前数组末尾处的其他项,可以有多个.注意:如果添加的元素类型为数组类型(Array),仍然会被当作一个元素看待,只是这个元素是数组类型而已.如果要合并两个数组,请使

jQuery根据元素值来删除一个数组元素及数组对象方法

在前提不知道b在这个数组的下标,删除b这个元素  var arrList = ['a','b','c','d'];         arrList.splice(jQuery.inArray('b',arrList),1); alert(arrList); 其中jQuery.inArray('b',arrList)是b这个元素在数组arrList 中的位置 splice(index,1)函数中第一个参数index是要删除元素在数组中的位置,第二个参数是要删除的数量. Array对象的方法有: c

C++二级指针第二种内存模型(二维数组)

C++二级指针第二种内存模型(二维数组) 二维数组 二维数组本质上是以数组作为数组元素的数组,即“数组的数组”. 定义 类型说明符 数组名[常量表达式][常量表达式] 例如: float a[3][4],b[5][10]; 二维数组元素地址 #include <iostream> using namespace std; int main() { cout << "Hello world!" << endl; int a[3][4]={ {1,2,3

numpy元素级数组函数

一元函数 abs, fabs 计算整数.浮点数或复数的绝对值.对于非复数值,可以使用更快的fabs. sqrt 计算各元素的平方根.相当于arr ** 0.5 sqare 计算各元素的平方.相当于arr ** 2 exp 计算各元素的e^x log, log10, log2, log1p 分别为自然对数.底数为10的log.底数为2的log和log(1 + x). sign 计算各元素的正负号:1(正数).0(零).-1(负数). ceil 计算各元素的ceiling值,即大于等于该值的最小整数

动态数组,数组初始化,数组内存释放,向数组中添加一个元素,向数组中添加多个元素,数组打印,顺序查找,二分查找,查找数组并返回地址,冒泡排序,改变数组中某个元素的值,删除一个数值,删除所有,查找含有

 1定义接口: Num.h #ifndef_NUM_H_ #define_NUM_H_ #include<stdio.h> #include<stdlib.h> /************************************************************************/ /*数组的结构体类型                                                    */ /*******************

数组 :定义一个有20个元素的数组,每一个元素的取值范围是[30 ,70],求他们的和

   //定义一个有20个元素的数组,每一个元素的取值范围是[30 ,70],求他们的和     int a[20] = {0};     int sum = 0;     for (int i = 0; i < 20; i++) {         a[i] = arc4random()%(70 - 30 + 1) + 30;         printf("%d ",a[i]);         sum += a[i];     }       printf("\n

定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> //定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数:然后按顺序每五个数求出一个平均值,放在另一个数组中并输出. var arr = []; var NewArr = []

08.18 javascript 06 数组 数组的概念 创建数组 读取数组中的元素 稀疏数组 添加和删除数组的元素 数组遍历 多维数组 数组的方法 类数组对象 作为数组的字符串

# 数组 ### 数组的概念 * 数组是值的有序集合 * 数组中的每个值 称之为 元素 * 每个元素可以是任意数据类型的值 * 每个元素都有索引(下标) * 元素的索引从0开始,按照顺序递增. 元素最大的索引 2^32-2 ### 创建数组 * 直接量 `[]` * 构造函方式  `new Array()` ### 读写数组中的元素 * 数组名[索引] ### 稀疏数组 * js数组的索引是连续的 * 没有连续的给元素赋值 , 没有赋值的元素会自动赋值 undefined ### 添加和删除 数

删除数组中某元素,返回含有剩余元素的数组

arr为删除前的数组,key为要删除的元素对象.//删除数组中某元素,返回含有剩余元素的数组------------------------------------function arrMove(arr, key){ var temp = []; for (var i=0; i<arr.length; i++) { if (arr[i] != key) { temp.push(arr[i]); } } return temp;}