Java整数反转,java实现数字反转

  Java整数反转,java实现数字反转

  首先,通过字符串转换int整数,并捕获溢出。

  类别解决方案{

  public int reverse(int x) {

  长nums=0;

  int temp=1;

  尝试{

  temp=x/math . ABS(x);

  StringBuilder num=new StringBuilder();

  num . append(math . ABS(x));

  nums=long . parse long(num . reverse()。toString());

  if(nums Math.pow(2,31) - 1) {

  返回0;

  }

  } catch(异常e) {

  //TODO:处理异常

  返回0;

  }

  return(int)nums * temp;

  }

  }字符串转换效率低,使用库函数多。

  (推荐视频教程:java视频教程)

  二、盈余方式

  类别解决方案{

  public int reverse(int x) {

  int ans=0;

  而(x!=0) {

  //判断溢出

  if((ans * 10)/10!=ans) {

  ans=0;

  打破;

  }

  //ans*10不溢出。

  ans=ans * 10 x % 10

  x/=10;

  }

  返回ans

  }

  }(ans * 10)/10其中ans * 10,java虚拟机实际上是进行数值型提升的,就是在溢出的时候,用长数据临时存储,最后通过缩小转换,保留低32位数值,得到(ans * 10)/10!=ans .所以不能满足只能存储32位整数的条件。

  相关文章和教程推荐:java入门。以上是java中整数求逆的细节。请多关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: