【问题标题】:Display byte as unsigned将字节显示为无符号
【发布时间】:2018-05-25 04:40:06
【问题描述】:

我正在使用 OpenCV4Android 构建一个 Android 应用程序。为了处理我使用的一些图像(即Mat 对象),我将它们转换为byte[](使用get 方法)。我的问题是这个数组的值显示为无符号字节,这使得调试非常困难:

有没有办法克服这个问题并将数组的值显示为无符号字节?

【问题讨论】:

    标签: java android opencv byte unsigned


    【解决方案1】:

    Java 不提供无符号字节原语。出于调试目的,您可以将每个字节复制到 int[](确保避免负值)并查看 int[]。这是一个拼凑,但这是最接近的解决方案。

    简单地将 byte 分配给 int 将保留符号,因此将使用强制转换。使用

    int myInt = myByte & 0xFF;
    

    【讨论】:

    • 谢谢。 “确保避免负值”是什么意思?这不取决于我将变量视为有符号还是无符号?特别是对于我的情况,字节的值在 -128 到 127 之间(如果我没记错的话......)
    • 好的,看到你编辑了你的帖子。现在很清楚,更重要的是 - 它正在工作。我不太喜欢它,但作为一种解决方法,它很好......谢谢
    猜你喜欢
    • 2011-10-21
    • 1970-01-01
    • 1970-01-01
    • 2015-01-12
    • 1970-01-01
    • 2018-04-07
    • 2014-12-06
    • 2017-10-01
    • 1970-01-01
    相关资源
    最近更新 更多