2016-08-05 1 views
0

配列内の対応するアルファベット文字で置き換える方法。あなたの配列が1から26までの文字列値が含まれている場合配列を含む配列をその出現に従って置換

Example: 
["1","2","3","3","2","3"] 

Replace: 1 -> A, 2-> B, 3-> C 

Result should be 
["A","B","C","C","B","C"] 
+1

そして、何の結果を入力配列 '[" "、" 100000 "、" -3.14 "、"π "、"] 'に期待しますか? –

+0

["A"、 "B"、 "C"、 "C"、 "B"、 "C"]と同様です。配列にString "1"の要素が含まれている場合は、 "A"に変換する必要があります。 – Nitesh

答えて

3

のように試すことができます:

let array = ["1", "2", "3", "3", "2", "3"] 

let replacementRules = ["1": "A", "2": "B", "3": "C"] 

let result = array.map{replacementRules[$0] ?? $0} 
print(result) 
//["A", "B", "C", "C", "B", "C"] 
1

、あなたはあなたが交換のルールにDictionaryを使用することができ、この

let alphabetArray = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"] 
    let arr = ["1","2","3","3","2","3"] 
    var newArr = [String]() 
    newArr = arr.map { (item) in 
     alphabetArray[Int(item)! - 1] 
    } 
    print(newArr) 
1
var arr = ["1","2","3","3","2","3"] 
for i in 0..<arr.count { 
    switch(arr[i]) { 
     case "1": 
      arr[i] = "A" 
      break 
     case "2": 
      arr[i] = "B" 
      break 
     case "3": 
      arr[i] = "C" 
      break 
    default: break 
    } 

} 
関連する問題