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

java:short min value->不兼容类型:required:short,found:int

孟建木
2023-03-14

我想通过使用位表示法为short分配最小值:

short s = 0b1000_0000_0000_0000;
int i = 0b1000_0000_0000_0000__0000_0000_0000_0000;

问题出在哪里?为什么0b1000_0000_0000_0000;超出短int范围?

共有1个答案

杜俭
2023-03-14

0b1000_0000_0000_0000int文本。因此,它表示正值32768,该值在short类型的范围之外(short.max_value32767)。

另一方面,0b1000_0000_0000_0000_0000_0000_0000_0000>也是int文本,因此可以将其赋给int变量。在本例中,它表示一个负值-integer.min_value

如果要将0b1000_0000_0000_0000的16个最低有效位分配给s,请使用:

short s = (short)0b1000_0000_0000_0000;

现在s将包含-32768(恰好是short.min_value)。

 类似资料:
  • 我正在使用JPA,列类型为: 我使用PostgreSql作为我的数据库,它支持bpchar类型,现在我尝试为我的测试添加H2,但问题是,当我运行测试时,我得到以下结果: 是否有其他方法可以实现这一目标?

  • 我定义jackoson序列化器并将其添加到java类中,如下所示: 编译器出现以下错误: 注释的定义为: 如果我从ReportFilterDeserializer中删除泛型attibute,它将通过编译。我不明白编辑为什么抱怨。

  • 我按照这个教程:https://github.com/codepath/android_guides/wiki/Fragment-Navigation-Drawer 现在我在这一点上: 我的问题是这条线... 显示一个错误:不兼容的类型。需要android。应用程序。FragmentManager发现:android。支持v4.app。碎片管理器。 我看到了一些帖子,但它们不适合我。 我用AppC

  • 我正在尝试使用reverfit和RxJava在我正在使用的应用程序中的自定义视图中进行API调用,但是当我尝试订阅来自我的reverfit API调用的Observable时,遇到了一个不兼容类型错误。 我的改装界面: } 和位于自定义视图的onFinishInflate()中的改装调用: 当我构建项目时,在自定义视图中以可观察的 query=...开头的行中遇到了不兼容类型错误: 错误:(60,

  • 我正在尝试创建一个查找器,它需要几个谓词并减少它们: