给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

1、个人认为题目点: a、有符号;b、考虑溢出问题;

public int Reverse(int x) {
         if (x.Equals(0))
             {
                 return x;
             }
             bool flag = false;
             if (x < 0)
             {
                 x = 0 - x;
                 flag = true;
             }
            char[] chr= x.ToString().Reverse().ToArray();
            try
            {
                if (flag)
                {
                    return 0 - Convert.ToInt32(new string(chr));
                }
                else
                {
                    return Convert.ToInt32(new string(chr));
                }
            }
            catch 
            {
                return 0;
            }
     }

 

posted @ 2019-02-26 10:11  一坪海岸线  阅读(1636)  评论(0编辑  收藏  举报