Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >事故复盘(1) - Integer用于金额计算的坑

事故复盘(1) - Integer用于金额计算的坑

作者头像
惊羽-布壳儿
发布于 2022-06-15 13:37:02
发布于 2022-06-15 13:37:02
8740
举报
文章被收录于专栏:惊羽-布壳儿惊羽-布壳儿

Integer在使用数量计算时,如果数值过大,会引起越界问题,如图 :

在进行金额计算时,一定要全部使用BigDecimal,否则可能会出现计算金额与实际金额不一致的情况

因为使用了Integer进行计算,导致超过21亿(2147483647)以上的金额出现负数,或者可能会出现与原金额不一样的正数,导致支付金额与原指令的交易金额发生差异,出现错账,是很大的教训.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
JavaSE基础 (全网最全知识点)
一个位也叫一个bit,8个bit称为1字节,16个bit称为一个字,32个bit称为一个双字,64个bit称为一个四字
不吃紫菜
2023/03/08
7480
JavaSE基础 (全网最全知识点)
Java 大神的十个私藏避坑绝技
答案是: No! 看似正确的判断奇数, 但是如果 i 是负数, 那么它返回值都是false 造成这种现象的是 => 从思想上固化, 认为奇数只在正数范围, 故判断负数将报错, 在C++中也是, 负数取余还是负. 在Java中取余操作定义产生的后果都满足下面的恒等式:
大蕉
2019/09/30
1K0
《编写高质量代码》学习笔记(1)
前言 看大神推荐的书单中入门有这么一本书,所以决定把这本书的精华(自认为很有用的点),或许是我自己现在能用到的点都提炼出来,供大家参考学习。 以下内容均出自《编写高质量代码 改善Java程序的151个建议》——秦小波 著一书。 ---- 建议1:不要在常量和变量中出现易混淆的字母 包名全小写,类名首字母全大写,常量全部大写并用下划线分隔,变量采用驼峰命名法命名等,这些都是最基本的Java编码规范,是每个Javaer都应熟知的规则,但是在变量的声明中药注意不要引入容易混淆的字母。看下面的例子,请思考以下程序
我没有三颗心脏
2018/04/26
1.4K0
【计组不挂科】计算机组成综合习题库(选择题207道&判断题93道&填空题143道)(含答案与解析)
A.输入/输出设备 B.外存储器 C.远程通信设备 D.除了CPU和内存以外的其他设备
YY的秘密代码小屋
2025/01/03
1480
【计组不挂科】计算机组成综合习题库(选择题207道&判断题93道&填空题143道)(含答案与解析)
C语言标准定义的32个关键字保姆级讲解
C语言中的数据类型主要有下面几种。实际上,数据类型可以理解为固定大小内存块的别名,给变量指定类型就是告诉编译器给该变量分配多大的内存空间,而变量相当于是内存块的门牌号。
mindtechnist
2024/08/08
1930
C语言标准定义的32个关键字保姆级讲解
Java基础知识总结(异常机制、集合、JUC、IO)
    3)、第三个是异常信息回答了为什么被抛出。Throwable是所有异常体系的顶级父类,包含了Error类和Exception类。从概念角度分析Java的异常处理机制。
别先生
2020/04/08
5510
Java基础知识总结(异常机制、集合、JUC、IO)
JAVA入门学习一
(1) JAVA 介绍 詹姆斯.高斯林(James Gosling) JAVA之父,与SUN公司的Patrick/Naughton/Mike Sheridan等人合作开发的一套语言叫”Oak”,后改名JAVA; Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言(Java面向对象程序设计语言和Java平台的总称)。
全栈工程师修炼指南
2020/10/23
3420
JAVA入门学习一
C/CPP基础知识练习题即分析
sqrt()函数在c语言中用于计算一个非负实数的平方根,开根号;其语法为double sqrt(double)。在sqrt()函数中没有sqrt (int),但是返回值可以为int,返回值可以与int类型进行运算。
CtrlX
2022/09/23
1.2K0
C/CPP基础知识练习题即分析
JAVA入门学习五
Scanner的概述:一个简单的文本扫描器,可以使用正则表达式解析原始类型和字符串,以默认空格作为分割。 Scanner的构造方法原理:
全栈工程师修炼指南
2020/10/23
5740
JAVA入门学习五
累了,代码异常!
软件开发中遇到异常才是正常,很少有人能写出完美的程序跑在任何机器上都不会报错。但极为正常的软件异常,却经常出自不同的原因,导致不同的结果。怎么样科学地认识异常、处理异常,是很多研发同学需要解决的问题。本文作者根据自己多年的工作经验,撰写了《异常思辨录》系列专栏,希望能体系化地帮助到大家。本文为系列第二篇,本篇文章将主要聚焦面向对象的分析设计和框架设计,欢迎阅读。
腾讯云开发者
2023/12/19
3771
累了,代码异常!
Java并发容器--ConcurrentHashMap
  1、不安全:大家都知道HashMap不是线程安全的,在多线程环境下,对HashMap进行put操作会导致死循环。是因为多线程会导致Entry链表形成环形数据结构,这样Entry的next节点将永远不为空,就会产生死循环获取Entry。具体内容见HashMap随笔。
在周末
2019/09/11
4720
【02】JAVASE-Java基础语法【从零开始学JAVA】
Java 是第一大编程语言和开发平台。它有助于企业降低成本、缩短开发周期、推动创新以及改善应用服务。如今全球有数百万开发人员运行着超过 51 亿个 Java 虚拟机,Java 仍是企业和开发人员的首选开发平台。
用户4919348
2024/05/25
1310
【02】JAVASE-Java基础语法【从零开始学JAVA】
Java基础
JAVA语言编译之后会生成一个.class文件,反射就是通过字节码文件找到某一个类、类中的方法以及属性等。反射机制指的是程序在运行时能够获取自身的信息。在JAVA中,只要给定类的名字,那么就可以通过反射机制来获取类的所有信息。Java
花落花相惜
2021/11/24
1.4K0
Hash算法的讲解[通俗易懂]
散列表,又叫哈希表,它是基于快速存取的角度设计的,也是一种典型的“空间换时间”的做法。顾名思义,该数据结构可以理解为一个线性表,但是其中的元素不是紧密排列的,而是可能存在空隙。
全栈程序员站长
2022/09/20
2.3K0
Hash算法的讲解[通俗易懂]
从零开始的内存马分析——如何骑马反杀(一)
在某次实战攻防中,有一对儿小马和大马,他们两个通过了层层设备,终于打入了内网,只是在砍杀的过程中,露出了马脚,从巨大的流量中,被挖了出来,可是,真的有这么容易吗?真的如我们所愿吗?随着你的越发深入的对木马,流量进行解密,你的心中越发的不安……
亿人安全
2022/08/30
6.2K0
从零开始的内存马分析——如何骑马反杀(一)
腾讯笔试+查漏补缺 synchronized和ReentrantLock的区别
1 int main() 2 { 3 // 动态规划问题之 --- 在所给出的钱里面凑够i元最少需要多少个硬币 或 张数? 4 // 状态和状态转移方程 5 // d(
林冠宏-指尖下的幽灵
2018/01/03
1.7K0
腾讯笔试+查漏补缺
		synchronized和ReentrantLock的区别
笨办法学 Java(二)
你在上一个练习中已经看到了这一点,但你可以在if语句的主体中放入任何你喜欢的东西,包括其他if语句。这被称为“嵌套”,在另一个if语句内部的if语句称为“嵌套 if”。
ApacheCN_飞龙
2024/01/26
2220
Java基础篇Java基础语法
注释:就是对代码的解释和说明。其目的是让人们能够更加轻松地了解代码。为代码添加注释,是十分必须要的,它不影响程序的编译和运行。
程序员Leo
2023/08/07
7310
Java基础篇Java基础语法
Java 编程问题:一、字符串、数字和数学
本章包括 39 个涉及字符串、数字和数学运算的问题。我们将从研究字符串的一系列经典问题开始,例如计算重复项、反转字符串和删除空格。然后,我们将研究专门用于数字和数学运算的问题,例如两个大数求和和和运算溢出,比较两个无符号数,以及计算除法和模的下限。每个问题都要经过几个解决方案,包括 Java8 的函数风格。此外,我们将讨论与 JDK9、10、11 和 12 有关的问题。
ApacheCN_飞龙
2022/07/11
8580
以太坊智能合约OPCODE逆向之理论基础篇
在我们对etherscan等平台上合约进行安全审查时,常常会遇到没有公布Solidity源代码的合约,只能获取到合约的OPCODE,所以一个智能合约的反编译器对审计无源码的智能合约起到了非常重要的作用。
Seebug漏洞平台
2018/07/12
1.7K0
相关推荐
JavaSE基础 (全网最全知识点)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档