当前位置: 首页 > 面试题库 >

Java部门返回错误结果

苏宏逸
2023-03-14
问题内容
 public static void main(String[] args) {
        final long a= 24 * 60 * 60 * 1000 * 1000;
        final long b= 24 * 60 * 60 * 1000;

        System.out.println(a/b);
 }

它应该返回1000,但是为什么返回5?


问题答案:

24 * 60 * 60 * 100086400000。如果你用它乘1000,它会溢出int类型(因为这的最大值int可容纳是2147483647比少了很多86400000000),你会得到500654080a

然后,将结果除以86400000,您将得到5

为了解决此问题,您需要明确指定乘法的结果将是long-这是因为Java中的所有数字运算符都会产生整数,除非明确指示要产生其他数字类型。

只需L在一些操作数上附加a 就足够了:

final long a = 24 * 60 * 60 * 1000 * 1000L;


 类似资料:
  • 问题内容: 当我比较具有相同下划线字符串的两个StringBuilder对象时,即使value应该为true也会返回。 问题答案: 这是因为不会覆盖类中的方法。 您将必须将两个对象都转换为,然后进行比较 这将为您提供正确的结果。显然,您必须注意 null 检查等。 根据合同,如果覆盖equals,则也必须覆盖它们,但是由于可变,因此其值的任何更改都会影响对象的哈希码。如果用作键,可能会导致存储的值

  • 我必须创建聚合,计算日期范围中包含的文档数量。我的查询如下所示: 间隔:604800000等于7天。 结果,我重新强调了这些: 您可以要求我的buckets从29/12/2016开始,但作为范围查询,不包括此日期。我希望我的桶应该从01/01/2017开始,正如我在范围查询中指出的那样。此问题仅发生在间隔天数大于1的查询中。在任何其他间隔的情况下,它工作得很好。我试了一天,几个月和几个小时,效果很

  • 我试图用这个php脚本创建一个更改密码页面。我希望能够告诉用户他们是否输入了正确的用户名和密码,以便进行更改。当我检查行时,无论它是否返回行,我总是得到以下错误: 警告:mysqli_num_rows()要求参数1为mysqli_结果,给定布尔值 这是我的代码: 注意:我确实在手之前建立了一个连接,只是似乎没有必要在这里进行连接。此外,如果我输入了正确的信息,它将根据需要更改密码,但仍会显示错误消

  • 基类控制器里有error方法,用于api的错误消息返回输出 /** * 操作错误跳转的快捷方法 * @access protected * @param mixed $msg 提示信息,若要指定错误码,可以传数组,格式为['code'=>您的错误码,'msg'=>'您的错误消息'] * @param mixed $data 返回的数据 * @par

  • 问题内容: 假设我有一个像 然后在主要我有代码 显然,无论json格式不同,上述代码都会产生nil错误。Go中的json.Unmarshal()什么时候返回错误? 问题答案: 如果源中的值与目标中的值不对应,则JSON解码器不会报告错误。例如,如果源包含“状态”字段,这不是错误,但目标没有。 在其他情况下,Unmarshal函数确实会返回错误: 语法错误 类型不匹配 游乐场的例子

  • 在下面的代码中,当我试图将数据插入firebase Firestore时,数据被插入,但在返回promise时,它将错误作为内部错误返回。Hera是控制台记录的错误 在index.js中的console.log()上登录云函数时出错 引发内部错误的原因是什么