ios – 在Swift中将字符转换为Int

ios – 在Swift中将字符转换为Int,第1张

概述我正在开发一个项目,其中包括使用 Damm Algorithm验证Int输入的校验和.我设法创建了一个 *** 作表,我访问表中值的方法涉及传递临时值和数字以通过在列值中. 恩. self.tableToUse[interim,checkSumArray[i]] 不幸的是,当我试图将输入中的数字传递给get / set方法时,我遇到了麻烦,我找不到将字符转换为Ints的方法. func encode(nu 我正在开发一个项目,其中包括使用 Damm Algorithm验证Int输入的校验和.我设法创建了一个 *** 作表,我访问表中值的方法涉及传递临时值和数字以通过在列值中.
恩.

self.tableToUse[interim,checkSumArray[i]]

不幸的是,当我试图将输入中的数字传递给get / set方法时,我遇到了麻烦,我找不到将字符转换为Ints的方法.

func encode(number: Int) -> Int{    var checkSumArray = [Int]()    if number > 99999999 {        println("number is too large")        return 0    }    else if number < 0 {        println("invalID input")        return 0    }    else {        checkSumArray.append(number%(10))        checkSumArray.append((number%(100)-checkSumArray[0])/10)        checkSumArray.append((number%(1000)-checkSumArray[1])/100)        checkSumArray.append((number%(10000)-checkSumArray[2])/1000)        checkSumArray.append((number%(100000)-checkSumArray[3])/10000)        checkSumArray.append((number%(1000000)-checkSumArray[4])/100000)        checkSumArray.append((number%(10000000)-checkSumArray[5])/1000000)        checkSumArray.append((number%(100000000)-checkSumArray[6])/10000000)        checkSumArray = checkSumArray.reverse()        var interim: Int = 0        for i in 0..<checkSumArray.count{            interim = self.tableToUse[interim,checkSumArray[i]]        }        return interim    }}

正如你所看到的,我不得不采用一种非常讨厌的方式处理这个问题.它有效,但它非常有限,效率低下,看起来或维护起来很难看.我已经看过在我构建的damm表中使用Characters而不是Ints的选项,并改变了get / set方法来处理那些,但这是很多额外的工作,可能会引入其他问题.任何有关处理此问题的替代方法的建议,或将字符转换为Ints的方法都将受到赞赏.

谢谢!

解决方法 没有必要使用字符,但你的代码创建一个
具有输入数字的十进制数字的数组可以大大增加
简化:

var checkSumArray = [Int]()var tmp = numberwhile tmp > 0 {    checkSumArray.append(tmp % 10)    tmp /= 10}checkSumArray = checkSumArray.reverse()
总结

以上是内存溢出为你收集整理的ios – 在Swift中将字符转换为Int全部内容,希望文章能够帮你解决ios – 在Swift中将字符转换为Int所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1060931.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存