当前位置: 首页 > 知识库问答 >
问题:

请解释一下这个Java程序输出

咸昊昊
2023-03-14

请解释为什么输出

byte c = (byte) (-512);
System.out.print(c);

0

共有1个答案

孟开宇
2023-03-14

Java字节的范围是-128到127。由于-512不在范围内,编译器将要求显式类型转换。因此,您必须将-512(一个整数)转换为字节。当程序运行时,JVM只是删除上面的24位以将-512放入8位。

-512         = 11111111111111110000001000000000 (int)
(byte) -512  =                         00000000 (byte) //truncated the upper 24 bits// = 0
 类似资料:
  • 我是Hibernate和JPA的新手,我对这个注释有问题。有人能简单地解释一下这个注释到底在做什么吗?因为在这种情况下,文档对我来说很难理解。 编辑我明白什么是持久上下文,但在代码中,我有这样的例子: 我对@PerustenceContext做什么有问题。抱歉,也许我没有具体说明。

  • 问题内容: 我只是在android上开始,而我的java很生锈。我不记得曾经见过像这样嵌套在另一个函数中的函数。有人可以向我确切解释final的作用,并解释为什么您要在另一个函数中嵌套这样的功能吗? 问题答案: 这是一个匿名类。实际发生的情况是正在使用重写的函数创建 的子类。 关于匿名类的最优雅的事情之一是,它们使您可以在需要的地方准确定义单发类。此外,匿名类具有简洁的语法,可减少代码中的混乱情况

  • 本文向大家介绍请解释一下TreeMap?相关面试题,主要包含被问及请解释一下TreeMap?时的应答技巧和注意事项,需要的朋友参考一下 考察点:key-value集合 TreeMap是一个有序的key-value集合,基于红黑树(Red-Black tree)的 NavigableMap实现。该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的 Comparator进行排序,具体取决于使用的

  • args) 请解释为什么我们在这里制作参数数组以及为什么它是静态的,什么是 args []。

  • 本文向大家介绍请解释一下,LINUX下的线程,GDI类相关面试题,主要包含被问及请解释一下,LINUX下的线程,GDI类时的应答技巧和注意事项,需要的朋友参考一下 考察点:线程 LINUX实现的就是基于核心轻量级进程的”一对一”线程模型,一个线程实体对应一个核心轻量级进程,而线程之间的管理在核外函数库中实现。 GDI类为图像设备编程接口类库。  

  • 问题内容: 我已经阅读了数百篇有关Java中“ this”的解释,但是我真的很难理解它。我正在并行学习android和java,我知道这样做比较难,但是我很喜欢。我被杀死的一件事是“ this”。我正在粘贴下面一次使用“ this”的教程中的代码。我本打算只编写一段代码,但希望尽可能提供帮助。 我正在寻找可以添加到笔记中的“ this”的良好解释。任何和所有帮助表示赞赏。提前致谢。 示例代码从下面