从整数中获取数字值的更简单方法
Simpler Way to Get Digit Value From an Integer
我需要分解一个 3 位数字以获得每个数字的值。我知道如何使用以下方法获取第一个和最后一个数字的值:
var myInt: Int = 248
print(myInt/100) // first number equals 2
print(myInt%10) // last number equals 8
而且我也知道如何使用以下方法获取中间数字的值:
print((myInt - myInt/100*100 - myInt%10)/10) // middle number equals 4
但是,我觉得我获取中间数字值的方式太乱了,可能有更简单的方式来获得相同的结果。
有人知道比我目前使用的更简单的获取中间数字值的方法吗?
你可以概括结果,但如果你只想要中间的 3 位数字:
print((myInt/10)%10)
除以 10
会将数字向下移动一位。然后 mod 10 得到最后一个移位的数字。
我将对结果进行概括以得到第 n 个数字,但这里是重要的细节:
% 10 ---> Last digit of a number.
/ 10 ---> Shifts the digits to the right by 1 place (248 -> 24)
我需要分解一个 3 位数字以获得每个数字的值。我知道如何使用以下方法获取第一个和最后一个数字的值:
var myInt: Int = 248
print(myInt/100) // first number equals 2
print(myInt%10) // last number equals 8
而且我也知道如何使用以下方法获取中间数字的值:
print((myInt - myInt/100*100 - myInt%10)/10) // middle number equals 4
但是,我觉得我获取中间数字值的方式太乱了,可能有更简单的方式来获得相同的结果。
有人知道比我目前使用的更简单的获取中间数字值的方法吗?
你可以概括结果,但如果你只想要中间的 3 位数字:
print((myInt/10)%10)
除以 10
会将数字向下移动一位。然后 mod 10 得到最后一个移位的数字。
我将对结果进行概括以得到第 n 个数字,但这里是重要的细节:
% 10 ---> Last digit of a number.
/ 10 ---> Shifts the digits to the right by 1 place (248 -> 24)