【问题标题】:Shuffle characters in a string in Swift在 Swift 中随机播放字符串中的字符
【发布时间】:2019-08-08 02:51:55
【问题描述】:

新的 Swift 5 shuffle() 方法是否可以(直接使用,或更复杂的咒语)随机打乱 Swift 字符串变量中的字符? (长度大于 1)

【问题讨论】:

    标签: swift string shuffle


    【解决方案1】:

    你可以试试这个漂亮的代码

    extension String {
        func shuffleString(minLength : Int) -> String{
            return self.count > minLength ? String(self.shuffled()) : self
        }
    }
    
    
    var string = "Whatever is your string"
    print(string.shuffleString(minLength: 1))
    

    【讨论】:

    • @JoakimDanielson 现在我已经根据问题修改了我的答案。
    【解决方案2】:

    你也许可以尝试这样的事情。

    var str = "Hello" 
    var shuffledString = String(str.shuffled())
    

    【讨论】:

    • shuffledString 是 [String.Element],不是字符串。
    • 我想如果你 initStringString
    【解决方案3】:

    试试这个功能

    func shuffleString(word: String) -> String {
    var chars = Array(word.characters)
    var result = ""
    
    while chars.count > 0 {
        let index = Int(arc4random_uniform(UInt32(chars.count - 1)))
        chars[index].writeTo(&result)
        chars.removeAtIndex(index)
    }
    
    return result
    

    }

    【讨论】:

      【解决方案4】:

      试试这个

      var str = "Shuffle me please"
      var shuffledStr: [Character]
      
      if !str.isEmpty {
         shuffledStr = str.shuffled()
         print(String(shuffledStr))
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-04-11
        • 1970-01-01
        • 1970-01-01
        • 2016-04-28
        • 2020-11-23
        • 1970-01-01
        • 2012-08-05
        相关资源
        最近更新 更多