整数反转
题目描述
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123
输出: 321
示例 2:
输入: -123
输出: -321
示例 3:
输入: 120
输出: 21
注意:
假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/reverse-integer
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
我的代码
public class Solution {
public int Reverse(int x) {
string aa = x+"";
string bb = aa.Substring(0,1);
string str2 = "";
if (bb == "-")
{
string cc = aa.Substring(1, aa.Length - 1);
char[] ch = cc.ToArray();
Array.Reverse(ch);
str2 = test(ch);
int newint = -1;
bool isok = int.TryParse(str2, out newint);
if (isok)
{
return Convert.ToInt32(bb + str2);
}
else
{
return 0;
}
}
else
{
char[] ch = aa.ToArray();
Array.Reverse(ch);//使用Array类的Reverse方法颠倒数据
str2 = test(ch);
int newint = -1;
bool isok = int.TryParse(str2,out newint);
if (isok)
{
return Convert.ToInt32(str2);
}
else
{
return 0;
}
}
return Convert.ToInt32(str2);
}
public string test (char [] cc)
{
string result = "";
foreach (var item in cc)
{
result += item;
}
return result;
}
}