在java卡中,只使用小數據類型(字節和短)。 我想將字節轉換成簡短的,以便我可以使用它來檢查條件等。 當使用java卡中的類型轉換將byte轉換爲short時,它會給我一些其他負數。 請告訴我如何轉換(11111111),這是在單個字節存儲的簡短。在JavaCard中將字節轉換爲short
我使用:
- 智能卡類型=接觸卡
- 使用的Java Card 2.2.2
- 與JCOP使用APDU
在java卡中,只使用小數據類型(字節和短)。 我想將字節轉換成簡短的,以便我可以使用它來檢查條件等。 當使用java卡中的類型轉換將byte轉換爲short時,它會給我一些其他負數。 請告訴我如何轉換(11111111),這是在單個字節存儲的簡短。在JavaCard中將字節轉換爲short
我使用:
是不是Java卡語言簡單與Java相同?然後,你可以寫
shortvar = bytevar&0xFF;
您可以使用javacard.framework.Util.makeShort(字節B1,B2字節)方法。
我知道你已經回答了,但據我所知,好的方法是使用javacard.framework.Util makeShort方法,當你給2個字節,它將返回短。
你非常接近。大多數java卡不支持int,因此需要添加一些簡寫:'shortvar =(short)(bytevar&(short)0xFF)'。 – Robert
是的它的權利,你可以使用 –
@Robert不需要內部轉換的值低於0xFF,雖然我做了一個短常量(例如'private static final short UNSIGNED_BYTE_MAX = 0xFF;') –