- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下 JRuby 代码:
def knuth(a, n, b)
if n ==1
r = a**b
else
r = 1
b.times do
r = knuth a, n-1, r
end
end
return r
end
k = knuth 3, 4, 5
puts k
puts k.size
但它给了我
java.lang.ArithmeticException: Negative exponent
知道为什么吗?
我在 Windows 上使用 jruby-9.0.0.0.pre2-p0
最佳答案
这里有两件事在起作用。首先,在 JVM 中,所有数字都经过签名。因此,当 r 变得足够大以致于高位被设置时,数字实际上变为负数,从而产生错误。第二件事是,每次执行 b.times
循环时,r
都会被重新分配,以便在下一次迭代期间 r
的值传递给 knuth
的值要大得多,导致 r
的新值再次大幅增加,依此类推,直到 r
变为负数。
关于java.lang.ArithmeticException : Negative exponent in jruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30765980/
我已经为数据表实现了 LazyLoading。当我使用分页浏览数据表时,出现以下异常。 com.sun.faces.context.PartialViewContextImpl processPart
这个问题已经有答案了: Operator precedence in Java (3 个回答) 已关闭 4 年前。 当我尝试编写真值表时,我试图找出算法,然后我发现了一个可行的算法。但是现在我不明白为
该程序可以正确计算带分数。我希望 while 循环在输入两个零后终止。但是,当我输入由空格分隔的两个零时,我得到“Exception in thread "main"java.lang.Arithme
我有一个 JAVA(在 Android 上运行)方法,它偶尔会因被零除而捕获 ArithmeticException,尽管变量 inSampleSize 在循环之前设置为 1,并且每次只乘以 2。以下
我正在用 Java 做这个数独求解器,由于某种原因,我的代码中有一个我无法修复的错误。我的代码有一个 guess 函数,它在检查每个框中的 1-9 数字的同时检查数字是否已经写入。 错误在行中: e
这个问题在这里已经有了答案: try-catch for division by zero (7 个答案) 关闭 7 年前。 我一定是做了什么蠢事。但我似乎无法弄清楚为什么这个简单的代码不起作用。
我想使用标准的 java MonetaryConversions 来转换货币。 乍一看它工作得很好而且简单: @Test public void testConversion()
@Override public StreamObserver mdtDialout(StreamObserver responseObserver) { return new StreamO
我想修改ArithmeticException输出消息。因此,为此我做了一些实验。我通过 ExtenderClass 类扩展了 ArithmeticException 类。这个问题的重点不仅在于找到修
为什么这段代码不抛出ArithmeticException?看看: public class NewClass { public static void main(String[] args)
该方法的目的是迭代一个名为 grid[][] 的二维整数数组,并根据最大和最小值将整数转换为 100 到 250 之间的较小范围(原来的最小值变为 100 ,原来的最大值变成250,中间的一切都分别计
我在解决从 Student 类中的 getAverageScore() 方法中获取的 ArithmeticException 时遇到问题。我正在尝试编写一个程序来读取以下文本文件 scores.txt
我正在使用计算器并使用 NetBeans GUI 生成器,因此它可能有点不清楚和令人困惑。(完整代码 http://pastebin.com/ZLcM74ZQ ,因为它太长了) package rec
我正在研究一种算法来检查数字是否为质数,并且需要处理非常大的数字,因此我正在使用 BigInteger 类。问题是抛出此异常ArithmeticException BigInteger 会溢出支持的范
我正在用JUnit练习,这是我想测试的简单方法 public float divide(int a, int b){ return (float)a/(float)b; } 这是测试(Ma
我对整个捕获处理异常概念有点陌生,我想知道为什么抛出 ArithmeticException 不会在退出时产生异常错误消息(在本例中/为零),而是在编译期间产生异常错误消息。 不应该正常编译然后在屏幕
我们在客户机器上的以下行中得到一个ArithmeticException(算术运算中上溢或下溢。)。我们无法在任何 PC(客户或我们的)上复制它: var actualFullness = (byte
下面的代码执行时没有任何歧义的编译错误,输出是“ArithmeticException”。各位大侠能帮我看看原因吗。 class Test { public static void main(
我正在尝试在 Android 应用程序中实现 RSA 算法。我正在使用 java.math.BigInteger.modPow() 函数进行加密/解密,它适用于我的计算机(Windows 和 Xubu
这只发生在 x64 版本中 An unhandled exception of type 'System.ArithmeticException' occurred in WindowsBase.dl
我是一名优秀的程序员,十分优秀!