如何在Java中模拟RPG Z-ADD或其他任务将会溢出的行为?
问题描述:
我必须模仿Java中的RPG行为。在RPG中,有2个区位十进制字段 FLDA是长度2 0个数字 FLDB是长度5与1位 FLDA值= 0 FLDB值=代码如何在Java中模拟RPG Z-ADD或其他任务将会溢出的行为?
C Z-ADDFLDB FLDA
1234.5
RPG线FLDA值将是34.默认情况下,RPG不会引发溢出异常,它会截断以适应。
如何使用Java BigDecimal执行此操作?
答
旧版本的RPG有这样的设计缺陷......当使用EVAL
操作码或TRUNCNBR(*NO)
编译器选项时,RPG IV会对其进行更正。
您将需要编写RPG的ADD
,SUB
,Z-ADD
和Z-SUB
操作码的Java等效项。 MOVE
将是另一个有问题的操作码。