如何从J2ME中的字节获取int?

时间:2011-10-07 07:09:02

标签: java java-me lwuit

我检索了LWUIT Button的backgroundTransparency,并返回byte数据类型数据。我希望将此byte变量转换为int变量。怎么做?

2 个答案:

答案 0 :(得分:3)

J2ME仍然是Java:

int intVar = byteBar;

答案 1 :(得分:2)

费尔南多的回答是100%正确的,但仍然有些误导,例如:

 byte b = (byte)0xff;
 int intVar = b;

 boolean thisIsFalse = intVar == 0xff;

乍一看,大多数人可能会感到惊讶,但逻辑实际上很简单。 0xff是一个字节的负数,但是int的正数(在Java SE中也是如此)。解决方案是将代码从上面更改为将“正确”转换为int的代码:

 int intVal = b & 0xff;
 boolean thisIsTrue = intVar == 0xff;

这将解决那里的问题,但您仍应注意:

 boolean thisIsFalse = intVar == b;
 boolean thisIsTrue = intVar == (b & 0xff);