如何使用 Groovy 在 ArrayList 中添加一个字符串?
How to add one more string in the ArrayList using Groovy?
我正在使用 SoapUI 来测试 REST 服务。如果存在 v_manageCustomText 值,我想添加,然后我需要将其添加到 dispositionNames 中,否则按原样添加 dispositionNames。
def dispositionNames = ["ApproveFraud","ApproveNonFraud","System Error"]
log.info(dispositionNames.getClass().getSimpleName())
log.info(context.testCase.getPropertyValue("v_manageCustomText"))
if(context.testCase.getPropertyValue("v_manageCustomDisposition") !="")
{
value = context.testCase.getPropertyValue("v_manageCustomDisposition")
dispositionNames = dispositionNames.add(value)
log.info dispositionNames
log.info(dispositionNames.getClass().getSimpleName())
}
我得到了以下结果。看起来我添加值后它变成了布尔类型。
Mon Oct 30 15:48:43 IST 2017:INFO:CustomDisposition1509102136431
Mon Oct 30 15:48:43 IST 2017:INFO:true
Mon Oct 30 15:48:43 IST 2017:INFO:Boolean
Groovy是一个"weakly typed language",这意味着一方面你不需要定义变量的类型。另一方面,如果您为变量分配不同类型的值,则该变量可以更改 mid-运行。
http://groovy-lang.org/semantics.html
如@adamcooney 所述,您使用了以下行:
dispositionNames = dispositionNames.add(value)
它执行将value
添加到dispositionNames
的操作。然后returnstrue
表示add
操作成功
然后将此 true
分配回 dispositionNames
var,这将其值从 List
更改为 Boolean
。这就是您看到此行为的原因。
我正在使用 SoapUI 来测试 REST 服务。如果存在 v_manageCustomText 值,我想添加,然后我需要将其添加到 dispositionNames 中,否则按原样添加 dispositionNames。
def dispositionNames = ["ApproveFraud","ApproveNonFraud","System Error"]
log.info(dispositionNames.getClass().getSimpleName())
log.info(context.testCase.getPropertyValue("v_manageCustomText"))
if(context.testCase.getPropertyValue("v_manageCustomDisposition") !="")
{
value = context.testCase.getPropertyValue("v_manageCustomDisposition")
dispositionNames = dispositionNames.add(value)
log.info dispositionNames
log.info(dispositionNames.getClass().getSimpleName())
}
我得到了以下结果。看起来我添加值后它变成了布尔类型。
Mon Oct 30 15:48:43 IST 2017:INFO:CustomDisposition1509102136431
Mon Oct 30 15:48:43 IST 2017:INFO:true
Mon Oct 30 15:48:43 IST 2017:INFO:Boolean
Groovy是一个"weakly typed language",这意味着一方面你不需要定义变量的类型。另一方面,如果您为变量分配不同类型的值,则该变量可以更改 mid-运行。
http://groovy-lang.org/semantics.html
如@adamcooney 所述,您使用了以下行:
dispositionNames = dispositionNames.add(value)
它执行将value
添加到dispositionNames
的操作。然后returnstrue
表示add
操作成功
然后将此 true
分配回 dispositionNames
var,这将其值从 List
更改为 Boolean
。这就是您看到此行为的原因。