首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >swift:不能将[sic]字符数组减少为字符串

swift:不能将[sic]字符数组减少为字符串
EN

Stack Overflow用户
提问于 2015-04-15 20:28:16
回答 2查看 870关注 0票数 1

我知道这是个不必要的问题但是..。为什么我不能使用减缩将字符数组转换为字符串?

例如,

代码语言:javascript
复制
let str = "this is a string"
let clist = Array(str)
let slist = clist.reduce("", +)

给我:“字符”不是“Uint8”的子类型

代码语言:javascript
复制
list dlist = [0, 1, 2, 3, 4, 5, 6]
let sum = dlist.reduce(0, +)

作品

我知道我可以简单地做slist = String(clist),但我只想知道,你知道吗?

在xcode 6.2操场上的Swift 1.1

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-15 20:37:16

combine:闭包中

代码语言:javascript
复制
let slist = clist.reduce("", +)
  • $0是迄今为止积累的结果-a String
  • $1是来自clist -a Character的当前元素。

没有以+作为参数的(String, Character)运算符。

这样做是可行的:

代码语言:javascript
复制
let slist = clist.reduce("") { $0 + String($1) }
票数 3
EN

Stack Overflow用户

发布于 2015-04-15 20:38:36

在Swift 1.2中:

代码语言:javascript
复制
let str = "this is a string"
let clist = Array(str)
let slist = clist.map { String($0) }.reduce("", combine: { $0 + $1 })
println(slist) // "this is a string"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29660242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档