我需要细分一个3位数字来获得每个数字的值.我知道如何使用以下内容获取第一个和最后一个数字的值:
var myInt: Int = 248
print(myInt/100) // first number equals 2
print(myInt%10) // last number equals 8
Run Code Online (Sandbox Code Playgroud)
我也知道如何使用以下方法获得中间数字的值:
print((myInt - myInt/100*100 - myInt%10)/10) // middle number equals 4
Run Code Online (Sandbox Code Playgroud)
但是,我觉得我得到中间数字值的方式太乱了,并且可能有更简单的方法来获得相同的结果.
有没有人知道更简单的选项来获得中间数字的值,那么我目前使用的是什么?
Dai*_*air 13
您可以概括结果,但如果您只想要3位数的中间值:
print((myInt/10)%10)
Run Code Online (Sandbox Code Playgroud)
通过将10位移的数量下降一位.然后mod 10获得最后一个移位的数字.
我将继续推广结果以获得第n位数字,但这里有重要的细节:
% 10 ---> Last digit of a number.
/ 10 ---> Shifts the digits to the right by 1 place (248 -> 24)
Run Code Online (Sandbox Code Playgroud)