SwiftでSubstring
型をString
型にするにはString()
で囲めばいいだけなのですが、メソッドチェーンで変換する方法はありますか。
例えば「文字列の配列の各末尾に改行をつけ、連結して1つの文字列にし、最後の改行を削除する」という処理を以下のように行うとdropLast()
はSubstring
型を返すので全体をString()
で囲う必要があります。
Swift
1let array = ["aaa", "bbb", "ccc"] 2let result = String(array 3 .map { $0 + "\n" } 4 .joined() 5 .dropLast() 6)
それでもいいのですが、できれば全てメソッドチェーンで書きたいです。
以下のようにして一応できましたが1文字ずつString
型にしているのでかなり微妙です。
Swift
1let array = ["aaa", "bbb", "ccc"] 2let result = array 3 .map { $0 + "\n" } 4 .joined() 5 .dropLast() 6 .map { String($0) } 7 .joined()
もし良い方法があれば教えてください。
extension
などは使わないやり方を希望しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/04 08:31