为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C#
POPMUISE 2019-09-26 14:41:06
说我有var i = 987654321;是否有一种简单的方法来获取数字数组,等效于var is = new int[] { 9, 8, 7, 6, 5, 4, 3, 2, 1 };而不用.ToString()遍历字符int.Parse(x)?
查看完整描述

3 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

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();}


查看完整回答
反对 回复 2019-09-26
  • 3 回答
  • 0 关注
  • 1646 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信