gpt4 book ai didi

Java/Android 添加 2 个字节(如何告诉编译器它不会超过 127?)

转载 作者:行者123 更新时间:2023-12-01 10:16:25 25 4
gpt4 key购买 nike

其中一个的值为 0 或 2,需要添加到另一个。

这就是我的方法调用到目前为止的样子

setNumber(new byte[]{(byte) 0xB0, (byte) 52});

根据另一个参数,我想做类似的事情

setNumber(new byte[]{(byte) 0xB0+参数, (byte) 52});

因此 paramater 介于 0 和 2 之间。我想这样做是因为我想避免在执行此操作的每一行都放置 if 语句。另外,我认为这是性能方面的最佳方式。

但是,Java 不允许我添加这两个字节 - 我得到发现不兼容的类型所需的字节 int。当我简单地直接添加参数的值时,我想要实现的目标确实有效

setNumber(new byte[]{(byte) 0xB0+2, (byte) 52}); 因为编译器知道它仍将保留在字节范围内。

那么我如何才能明确 parameter 永远不会超过 2 的值呢?无论程序发生什么情况,这段代码肯定会运行,我只需要它以某种方式编译 - 并且因为手动添加值是有效的,我希望有一种方法可以让编译器知道这里不会有任何问题。

谢谢

最佳答案

您唯一需要做的就是将加法结果转换为字节。如果值超过127,位将被截断。

setNumber(new byte[]{(byte) (0xB0 + param), (byte) 52});

关于Java/Android 添加 2 个字节(如何告诉编译器它不会超过 127?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35865799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com