【问题标题】:Create Matrix with string - Swift用字符串创建矩阵 - Swift
【发布时间】:2017-03-01 09:59:18
【问题描述】:

我尝试制作矩阵函数。我想从参数中获取行数和列数并显示如下矩阵:

function stars(rows: Int, columns: Int) -> String {
  //I need for loops to create a function body?
}

stars(rows: 5, column: 3)
***
***
***
***
***

感谢您的帮助!

【问题讨论】:

  • 您的问题是关于matrix 还是关于描述矩形星形的字符串?
  • 您将无法通过在线提问来学习。
  • 我知道,但有时我需要一些技巧来解决问题。感谢您的关注。

标签: swift function matrix


【解决方案1】:

试试这个代码:

function stars(rows: Int, columns: Int) -> String {
    var str = ""
    for i in 0..<rows{
        for j in 0..<columns{
            str.append("*")
        }
        str.append("\n")
    }
   // print(str)
    return str
}

【讨论】:

  • 是的!非常感谢 :) 我非常接近使用我自己的代码的解决方案 :)
【解决方案2】:
for i in 0..<rows{
    for j in 0..<coloumns{
    string.append("*")
    }
  string.append("\n")
}

【讨论】:

    【解决方案3】:

    在操场上尝试。
    String(repeating: "*", count: columns) 创建一个重复某个子字符串的字符串,例如,String(repeating: "abc", count: 3) 返回abcabcabc
    repeatElement + joined 也是如此,除了它将分隔符字符串(在本例中为 \n)放在子字符串之间。

    func stars(rows: Int, columns: Int) -> String {
        let row = String(repeating: "*", count: columns)
        return repeatElement(row, count: rows).joined(separator: "\n")
    }
    

    【讨论】:

    • 太棒了!它的工作,但这是我在 Swift(和编程)中的第一步,这对我来说很难理解 :) 感谢您的帮助,我将尝试在文档中找到有关此的信息。
    • 在操场上尝试一下。 String(repeating: "*", count: columns) 创建一个重复某个子字符串的字符串,例如,String(repeating: "abc", count: 3) 返回"abcabcabc"repeatElement + joined 做同样的事情,除了它在子字符串之间放置分隔符字符串(在本例中为 `"\n"`)。
    • 好的..现在看起来很容易:) 感谢您的解释
    • 虽然这段代码 sn-p 可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
    猜你喜欢
    • 1970-01-01
    • 2013-05-28
    • 1970-01-01
    • 2018-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-23
    相关资源
    最近更新 更多