在groovy中追加字符串的理想方式是什么?
我需要从groovy中的映射数组创建一个字符串 必需字符串=在groovy中追加字符串的理想方式是什么?,groovy,Groovy,我需要从groovy中的映射数组创建一个字符串 必需字符串=^(123 | 456 | 789) 目前,我正在做下面这样的事情,这会导致生产环境中的性能问题吗?还是应该使用StringBufferJava类 def getProjectList(def caseResult) { def projectList = "" caseResult.each { projno -> if (projectList.length() == 0) {
^(123 | 456 | 789)
目前,我正在做下面这样的事情,这会导致生产环境中的性能问题吗?还是应该使用StringBufferJava类
def getProjectList(def caseResult) {
def projectList = ""
caseResult.each { projno ->
if (projectList.length() == 0) {
projectList = "^(${projno.project_no}|"
} else {
if (projectList.indexOf(projno.project_no) == -1)
projectList+="${projno.project_no}|"
}
}
projectList = projectList.substring(0, projectList.length() - 1)
projectList += ')'
return projectList
}
我需要从groovy中的映射数组创建一个字符串
那么定义参数类型将非常有用。
返回类型也是
这会导致生产箱出现性能问题吗
首先定义性能问题。您是否衡量过代码是否存在性能问题?如果不是,它看起来像一个典型的“过早优化”
我应该使用StringBufferJava类吗
如果您担心性能,那么应该使用StringBuilder,因为StringBuffer是线程安全的,会对性能造成一些影响
如果你的代码有什么问题,那就是可读性而不是性能。
我向您推荐这个StackExchange网站,专门针对这些问题--试试看 我会为了阅读的方便
def getProjectList(def caseResult) {
"^(${caseResult.project_no.join('|')})"
}
事实上,你只是想要独一无二的,不是吗
def getProjectList(def caseResult) {
"^(${caseResult.project_no.unique().join('|')})"
}
这会导致性能问题吗
好吧,首先定义性能问题。您输入的“地图数组”是什么样子的?@EelLee:OOMExceptions@tim_yates:groovy sql结果集<代码>[[项目编号:0-1006,案例编号:0178786],[项目编号:1-2243239,案例编号:018016],[项目编号:1-2282337,案例编号:020596],[项目编号:1-23232392,案例编号:0200432]]