如何从打印中删除()(swift3)

时间:2017-05-10 21:55:07

标签: arrays swift printing parentheses

下面的代码打印出我想要的内容,我想删除这些()。 enter image description here 执行打印的行在其上方有注释。应该很简单我只是不知道该怎么做。

   import UIKit

    class ViewController: UIViewController {
    @IBOutlet var entry: UILabel!
             var numbersWithCreationDates = [(Int,String)]()
       @IBOutlet var label: UITextField!

    @IBAction func enterScore(_ sender: Any) {

    if let text = label.text {
        if let number = Int(text){
               // let numberAndDate = (number,Date())

            let date = Date().description
            let numberAndDate = (number, date.substring(to: date.characters.index(of: "+")!))
                numbersWithCreationDates.insert(numberAndDate, at: 0)
            //line in question
            entry.text = numbersWithCreationDates.map { "\($0)" }.joined(separator:"\n\n")

            }}

        else {
        entry.text = "Please Enter Number"

        }}}
extension Date {
    static var formattedNow: String {
        let now = Date()
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "MM/dd/yyyy HH:mm:ss"
        dateFormatter.timeZone = TimeZone(identifier: "EST")
        return dateFormatter.string(from: now)
    }}

1 个答案:

答案 0 :(得分:2)

您的输出是将元组转换为字符串的结果。

您可以更改:

entry.text = numbersWithCreationDates.map { "\($0)" }.joined(separator:"\n\n")

为:

entry.text = numbersWithCreationDates.map { "\($0.0), \($0.1)" }.joined(separator:"\n\n")

这将元组的每个值放在字符串中而不是元组本身。这也消除了日期字符串周围的引号。当然,您可以按照自己的方式格式化输出。