gpt4 book ai didi

java - 将字节 [] 转换为整数

转载 作者:搜寻专家 更新时间:2023-11-01 04:03:37 25 4
gpt4 key购买 nike

我有这个方法可以将有符号或无符号的 byte 转换为 int,但它没有返回它应该返回的内容。有人可以指出以下代码中的问题吗?

public int convertByteToInt(byte[] b){          
int value= 0;
for(int i=0;i<b.length;i++){
int n=(b[i]<0?(int)b[i]+256:(int)b[i])<<(8*i);
value+=n;
}
return value;
}

编辑:

我实际上正在读取一个 wav 文件以计算 SNR。转换的返回值应该介于 0 和 255 之间。应用程序应该比较 2 个 waves 文件,一个是原始文件,另一个是修改后的文件并计算 SNR。

最佳答案

谢谢你的回答,但我发现问题来自其他地方,而不是来自转换方法,

还有其他版本的方法

public int convertirOctetEnEntier(byte[] b){    
int MASK = 0xFF;
int result = 0;
result = b[0] & MASK;
result = result + ((b[1] & MASK) << 8);
result = result + ((b[2] & MASK) << 16);
result = result + ((b[3] & MASK) << 24);
return result;
}

关于java - 将字节 [] 转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4950598/

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