【问题标题】:How to convert string to UInt32?如何将字符串转换为 UInt32?
【发布时间】:2017-02-01 18:08:28
【问题描述】:

我是 swift 的初学者,在将字符串转换为 UInt32 时遇到问题。

   let Generator = (ReadableJSON ["People"] [Person]["F1"].string! as NSString).doubleValue

    if Generator == 1 {

        NameLabel1 = ReadableJSON ["People"] [Person]["A1"].string as String!
        NameImeNaObekt = ReadableJSON ["People"] [Person] ["B1"].string as String!
        Picture = ReadableJSON ["People"] [Person] ["E1"].string as String!

    } else {

         let RGen = arc4random_uniform ("\(Generator)") // here is the error

    }

你能告诉我如何解决它。问题出在最后一行,它是红色的,上面写着无法将 String 类型的值转换为 UInt32。 主要思想是我从 JSON 文件中读取数字,我必须将此数字填充到 arc4random_uniform 中。

【问题讨论】:

  • 既然你是 Swift 的初学者,请先学习考虑变量名以小写字母开头的命名约定。

标签: swift random generator


【解决方案1】:
arc4random_uniform(UInt32) 

接受一个 UInt32 值,但你将一个字符串值传递给它

这会将您的数字转换为字符串

"\(Generator)"

最后一行应该是这样的

let RGen = arc4random_uniform (UInt32(Generator))

如果你想 'RGen' 是一个字符串,你可以这样做

"\(RGen)"
String(RGen)

【讨论】:

  • 生成器后面的数字应该显示到arc4random_uniform中
  • 因为你的“生成器”是双倍的,所以你的代码应该像这样 arc4random_uniform(UInt32(Generator))
【解决方案2】:
     var RGen= 0

     let RGen =int( arc4random_uniform ("\(Generator)")  )

或 让 RGen =( arc4random_uniform ("(Generator)") ).toInt

Look here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-15
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    • 2013-06-16
    • 1970-01-01
    • 2019-07-15
    • 1970-01-01
    相关资源
    最近更新 更多