Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays Scala按逗号拆分数组,并按引号拆分每个项_Arrays_Scala - Fatal编程技术网

Arrays Scala按逗号拆分数组,并按引号拆分每个项

Arrays Scala按逗号拆分数组,并按引号拆分每个项,arrays,scala,Arrays,Scala,我需要在scala中用逗号拆分数组,并用引号拆分每个项 scala提供了mkString来拆分项目,下面的示例使用它: val args = Array("Hello", "world", "it's", "me") val string = args.mkString(",") 结果是: Hello,world,it's,me 但我需要每个元素都用引号括起来,如下例所示: "Hello","world","it's","me" 我可以使用下面这样的映射来实现它 args.map(entr

我需要在scala中用逗号拆分数组,并用引号拆分每个项

scala提供了mkString来拆分项目,下面的示例使用它:

val args = Array("Hello", "world", "it's", "me")
val string = args.mkString(",")
结果是:

Hello,world,it's,me
但我需要每个元素都用引号括起来,如下例所示:

"Hello","world","it's","me"
我可以使用下面这样的映射来实现它

args.map(entry => s""""${entry}"""" ).mkString(",")
是否有任何内置操作以更礼貌的方式执行相同操作


谢谢

您的解决方案看起来不错。较短的版本可以是
s“\$s\”
,但目前不起作用:

或者可以使用带有选项的
mkString
版本来提供前缀和后缀,如下所示:

val args = Array("Hello", "world", "it's", "me")
args.mkString(""""""", """","""", """"""")

在这里,三个arg mkString肯定是更好的解决方案。@TheArchetypalPaul我想反对。“用引号括住每个元素”肯定是对每个元素的操作,因此是一个
映射。我发现<>代码> map /<代码>的解决方案更加清晰,并考虑<代码> MKScord稍微有点不同。我们必须有所不同。<代码> MKStult >正是为了这类事情。我认为这个更可读:<代码> ARGS.MKStand(“\”)、“\”、“\”、“\”)/代码>scala以增强可读性而闻名,但这并不是严格地增强可读性。它只在字符串的开头和结尾添加引号。我听起来像是他需要每个项目的引号。@wheaties由
mkString()
@wheaties的第二个参数(
,“
)处理,但我在scala版本2.11.7中得到了
res0:String=“Hello”,“world”,“it's”,“me”