How to convert a swift string to an array? [duplicate] - arrays

This question already has answers here:
Swift 3.0 iterate over String.Index range
(10 answers)
Convert Swift string to array
(14 answers)
Closed 5 years ago.
Would it be possible to loop through each character in the string, and then place each character into an array?
I'm new to swift, and I'm trying to figure this out. Could someone write a code for this?

It's really simple:
let str = "My String"
let letters = str.characters.map({String($0)})
print(letters)

Related

Swift string to array of single character strings [duplicate]

This question already has answers here:
Convert Swift string to array
(14 answers)
Closed 4 years ago.
How can I convert a string into an array of single strings? So String -> [String]
If I do Array(myString) it results in an array of characters. I tried flatmap (or compactMap in the latest Xcode beta):
stringArray = Array(myString).flatMap { $0 as? String }
Then I get a warning: "Cast from 'Character' to unrelated type 'String' always fails" and `print(stringArray) results in [].
Is this possible?
Edit: this was already answered in a non-accepted answer in this question: Convert Swift string to array
You can do it like as follows... Initialize a new string inside the map.
let test = "thisIsATest"
let array = test.map( { String($0) })

Index out of range in multidimensional array in Swift [duplicate]

This question already has answers here:
Swift 3 2d array of Int
(2 answers)
Closed 5 years ago.
var tri = [[Int]]();
tri[0][0] = 321;
This code causes this error:
fatal error: Index out of range
What's wrong?
You're accessing the first element of the first subarray of the array. But your array doesn't contain any subarrays, so it crashes.

Convert an array of Ints to a comma separated string [duplicate]

This question already has answers here:
How do I convert a Swift Array to a String?
(25 answers)
Closed 5 years ago.
I know that if I want to convert an array of Ints to a String, I do this:
[0,1,1,0].map{"\($0)"}.reduce(""){$0+$1}
but I cannot figure out how would I convert an array of Ints to a comma separated String
Well you can do it like :
let formattedArray = ([0,1,1,0].map{String($0)}.joined(separator: ",")

Move array in array of arrays [duplicate]

This question already has answers here:
How to change the position of an array element?
(8 answers)
Closed 6 years ago.
I have an array of arrays like this:
[['a','b','c'],['d','e','f'],['g','h','i'],['j','k','l']]
Now I want to move the last array ['j','k','l'] after array ['a','b','c'] and before array ['d','e','f']. How can I do this?
array.insert(1, array.delete_at(3))
This should do it.

split a string to an array (each character) - Swift [duplicate]

This question already has answers here:
Convert Swift string to array
(14 answers)
Closed 6 years ago.
I've got a little problem. I want to split a String in an array of characters, where I can work on each character.
For example:
"Hello"
arrayofstring[0] ->H
arrayofstring[1] ->e
arrayofstring[2] ->l
arrayofstring[3] ->l
arrayofstring[4] ->o
I am thankful for every help.
Unless I'm missing something, it's easier than either of the other answers:
let arrayofstring = Array("Hello".characters)
Do something like this:
let string : String = "Hello"
let arrayofstring = string.characters.map { (Character) -> Character in
return Character
}
println(arrayofstring)

Resources