leetCode有道题Reverse Integer,因为int的最大值为2的31次方减一,最小值为-2的31次方。

我一开始的代码将res递归加放在try中,以为溢出会有异常,然而并没有。

因为出传入的参数为int类型,且内存和时间要求都能满足,所以long存放中间结果足够了。leet上有个哥们用了一种更机智的溢出检测(自己去看:D)

我的代码:

public class Solution {
public int reverse(int x) {
if(x<=9&&x>=-9||x==0){
return x;
}
boolean nagetive=false;
int y=x;
if(x<0){
y=-x;
nagetive=true;
}
ArrayDeque<Integer> s=new ArrayDeque();
while(y>0){
s.add(y%10);
y/=10;
}
long res=0L;
while(s.size()>=1){
res+=s.poll()*Math.pow(10,s.size());
}
if(res>Integer.MAX_VALUE||res<Integer.MIN_VALUE){
return 0;
}
return nagetive?(int)-res:(int)res;
}
}

java 8中有溢出检测的加方法。

Stack Overflow:https://stackoverflow.com/questions/3001836/how-does-java-handle-integer-underflows-and-overflows-and-how-would-you-check-fo

Java Integer Addition Subtration Overflow 整数加减溢出的更多相关文章

  1. 大整数加减运算的C语言实现

    目录 大整数加减运算的C语言实现 一. 问题提出 二. 代码实现 三. 效果验证 大整数加减运算的C语言实现 标签: 大整数加减 C 一. 问题提出 培训老师给出一个题目:用C语言实现一个大整数计算器 ...

  2. JAVA日期字符串转化,日期加减

    SimpleDateFormat函数语法:  G 年代标志符  y 年  M 月  d 日  h 时 在上午或下午 (1~12)  H 时 在一天中 (0~23)  m 分  s 秒  S 毫秒  E ...

  3. java基础篇 -- 常用的日期加减和日期格式化工具类

    平时我们遇到日期的加减,感觉是相当麻烦的,以下是常用的日志加减的方法,包括日的加减.月的加减等,也包括了一些常用的日期格式化,这样在我们以后碰到日期加减的时候会省去很多麻烦,欢迎大神指正和吐槽: pa ...

  4. java中可以对时间进行加减处理,有时候不用在sql语句中处理

    String ssny = (String) pd.get("ssny");   SimpleDateFormat simpleDateFormat=new SimpleDateF ...

  5. Java对日期Date类进行加减运算,年份加减,月份加减

      import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date; public class Da ...

  6. 【转】Java对日期Date类进行加减运算,年份加减,月份加减

    import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date; public class Date ...

  7. 转 Java对日期Date类进行加减运算一二三

    请移步,https://blog.csdn.net/hacker_lees/article/details/74351838 ,感谢博主分享

  8. Java对日期Date类进行加减运算一二三

    转载大神 https://blog.csdn.net/hacker_lees/article/details/74351838

  9. Java初学者作业——分别计算两个整数加、减、乘、除的结果并显示,要求除法保留两位小数。

    返回本章节 返回作业目录 需求说明: 分别计算两个整数加.减.乘.除的结果并显示,要求除法保留两位小数. 实现思路: 接收用户控制台输入的两个整数. 实现两个整数的加.减.乘.除的运算并输出结果. 除 ...

随机推荐

  1. Lesson 13 The search for oil

    What do oilmen want to achieve as soon as they strike oil? The deepest holes of all are made for oil ...

  2. 【快学springboot】5.全局异常捕获,异常流处理业务逻辑

    前言 上一篇文章说到,参数校验,往往需要和全局的异常拦截器来配套使用,使得返回的数据结构永远是保持一致的.参数异常springboot默认的返回结构: { "timestamp": ...

  3. zabbix通过ipmi传感器监控浪潮服务器的硬件信息

    一:实验对象 操作系统版本:centos7.6 监控对象:通过服务器传感器获取到的所有在使用的硬件信息 zabbix版本: 4.0.14二:zabbix介绍 zabbix适合中小型企业.大型企业的用户 ...

  4. C++中%d,%s,%x,%f,%.100f,%的意思

    C++中%d,%s,%x,%f,%.100f,%的意思 标准格式化输出:格式字符有d,o,x,u,c,s,f,e,g等. 格式说明:由“%”和格式字符组成,如%d.%f等. %c用来输出一个字符; % ...

  5. pytorch神经网络解决回归问题(非常易懂)

    对于pytorch的深度学习框架,在建立人工神经网络时整体的步骤主要有以下四步: 1.载入原始数据 2.构建具体神经网络 3.进行数据的训练 4.数据测试和验证 pytorch神经网络的数据载入,以M ...

  6. Spring mvc mybatis 查询结果缺少字段 解决方法

    参考:https://blog.csdn.net/xiaofeifei8421/article/details/43231815

  7. div 浮动

    浮动 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <titl ...

  8. JS控制输入框和文本框字数

    文本框限制字数: HTML结构: JS: $('.advert-title').each(function(){ var TXTlength = $(this).text().length; // 当 ...

  9. d3基本图形

                                             柱状图                                   散点图.气泡图               ...

  10. Navicat导入json文件到数据库

    最近做小程序商城系统,物流管理这块需要存储国际和中国的物流地址. 所以,天哪,地址那么的多!!!! www.baidu.com,搜索大佬是如何做的.有的是通过访问阿里云快递物流api接口获取数据存入数 ...