java 在Groovy中发送一个值中包含“,”作为参数的Map时出现了一个奇怪的问题

blpfk2vs  于 2022-12-28  发布在  Java
关注(0)|答案(1)|浏览(140)

我情况是这样的:

func1(){
   def value1 = "gal,dan"
   def prop = ['names': value1]
   func2(prop)
}

func2(prop){
   def params_str = prop.collect { k, v -> "k=v" }.join(' ')
}

现在我得到了:dan没有值,这意味着它将第一个值中的,""视为转到下一个键值对的,""
有人知道怎么修吗?
我尝试编码和解码它,但它毫无意义,因为当我解码它时,它仍然将","视为转到下一个键值对
我试着像['names':"$value1"]也失败了我尝试添加"/'gal,dan/' "也失败了
我期望名称= gal,dan

aiazj4mn

aiazj4mn1#

需要用引号将value1变量括起来,以表示它是单个字符串值。

func1() {
   def value1 = "gal,dan"
   def prop = ['names': "'$value1'"]
   func2(prop)
 }

func2(prop) {
   def params_str = prop.collect { k, v -> "k=$v" }.join(' ')
 }

相关问题