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

Java中的整数到字节转换

司马宏邈
2023-03-14
问题内容

在Java中,我们可以做

byte b = 5;

但是为什么我们不能将相同的参数传递给接受函数 byte

myObject.testByte(5);
public void testByte (byte b)
{
  System.out.println("Its byte");
}

它给出以下错误

The method testByte(byte) in the type Apple is not applicable for the arguments (int)

PS:可能是一个愚蠢的问题,我想我需要再次修改基础知识。

谢谢。


问题答案:

硬编码的初始化值在Java中有些特殊-假定它们对要初始化的变量的类型具有强制性。本质上,第一段代码实际上是这样的:

byte b = (byte) 5;

如果你这样做了…

myObject.testByte((byte) 5);

…您不会收到该错误,但如果不这样做,则5默认情况下将创建一个int,并且不会自动将其强制转换。



 类似资料:
  • 问题内容: 我得到一个整数: 当我使用方法: 给出: 但我想要一个字节数组: 我该怎么做? 问题答案: 使用Java NIO的ByteBuffer非常简单: 输出:

  • 问题内容: 将转换为的快速方法是什么? 例如 问题答案: 看看ByteBuffer类。 设置字节顺序保证了,,和。 或者,你可以手动执行以下操作: 该班是专为尽管这样的脏手任务。实际上,私有定义了以下辅助方法:

  • 问题内容: 我知道Java不允许无符号类型,所以我想知道它如何将整数转换为字节。假设我有一个值为255的整数a,并且将该整数转换为一个字节。该值表示在字节11111111中吗?换句话说,该值是否更多地视为带符号的8位整数,还是仅直接复制该整数的后8位? 问题答案: 这称为缩小原始转换。根据规格: 将有符号整数缩小为整数类型 T会 简单地丢弃除 n个 最低阶位以外的所有位,其中 n 是用于表示类型

  • 问题内容: 我是Java新手。我收到字节数组中的UDP数据。字节数组的每个元素都具有十六进制值。我需要将每个元素转换为整数。 如何将其转换为整数? 问题答案: 样例代码:

  • 如何在java中将字节数组转换为int。我正在构建蓝牙应用程序,我在其上收到字节数组中的消息,然后将其转换为字符串,它已成功转换,但我也希望它以整数形式存在