您将获得一个[String:String]类型的字典crypt,其中包含所有小写字母的值。 crypt字典表示对消息进行编码的方式。例如,如果crypt [“h”] =“@”和crypt [“i”] =“!”消息“hi”的编码版本将是“@!”。
问题是我必须编写代码,该代码将包含仅包含小写字母和空格的任何字符串,并使用crypt字典对其进行编码。我成功地尝试编写代码失败了所以我最终只使用了一个print语句 //打印(隐窝[ “H”]!隐窝[ “i” 的]!)。
如果您有任何想法想分享,请这样做。
谢谢
答案 0 :(得分:1)
这是否符合您的要求:
let message = "hi"
let encryptedMessage = message.map { crypt[String($0)]! }.joined()
如果你不熟悉它,map
ping一个字符串遍历每个字符,对它做一些事情,然后返回该字符串。 $0
指的是第一个参数(在这种情况下,#1为1,但是0索引)。
答案 1 :(得分:0)
正如Dopapp所说,地图是最优雅的解决方案。如果你想看到一些突破的步骤,你可以做很长的路。
var message = "hi"
var crytpedMessage = ""
for char in message {
let newChar = crypt[String(char)]
cryptedMessage.append(newChar)
}