有没有一种简单的方法可以将int转换为每个数字的int数组?

说我有

var i = 987654321;

是否有一种简单的方法来获取数字数组,等效于

var is = new int[] { 9, 8, 7, 6, 5, 4, 3, 2, 1 };

而不用.ToString()遍历字符int.Parse(x)

回答:

public Stack<int> NumbersIn(int value)

{

if (value == 0) return new Stack<int>();

var numbers = NumbersIn(value / 10);

numbers.Push(value % 10);

return numbers;

}

var numbers = NumbersIn(987654321).ToArray();

无需递归的替代方法:

public int[] NumbersIn(int value)

{

var numbers = new Stack<int>();

for(; value > 0; value /= 10)

numbers.Push(value % 10);

return numbers.ToArray();

}

以上是 有没有一种简单的方法可以将int转换为每个数字的int数组? 的全部内容, 来源链接: utcz.com/qa/425956.html

回到顶部