Encul
Encul

Reputation: 93

How to get rid of array brackets while printing

While printing an array how to get rid of brackets from left and right?

var array = ["1", "2", "3", "4"]
println("\(array)") //It prints [1, 2, 3, 4]

var arrayWithoutBracketsAndCommas = array. //some code

println("\(arrayWithoutBracketsAndCommas)") //prints 1 2 3 4

Upvotes: 4

Views: 3664

Answers (1)

ABakerSmith
ABakerSmith

Reputation: 22939

You could do:

extension Array {
    var minimalDescription: String {
        return " ".join(map { "\($0)" })
    }
}

["1", "2", "3", "4"].minimalDescription // "1 2 3 4"

With Swift 2, using Xcode b6, comes the joinWithSeparator method on SequenceType:

extension SequenceType where Generator.Element == String {
    ...
    public func joinWithSeparator(separator: String) -> String
}

Meaning you could do:

extension SequenceType {
    var minimalDescrption: String {
        return map { String($0) }.joinWithSeparator(" ")
    }
}

[1, 2, 3, 4].minimalDescrption // "1 2 3 4"

Swift 3:

extension Sequence {
    var minimalDescription: String {
        return map { "\($0)" }.joined(separator: " ")
    }
}

Upvotes: 13

Related Questions