[問題] byte 相加
前輩好
我用 android studio 開發APP,將這個以下的byte array傳到裝置,裝置將最後一個byte
作為 checksum來判斷是否有效數據。
byte[] value={(byte)0x01,(byte)0x02,(byte)0x03,checksum}
而 checksum 的算法是 value[0]+value[1]+value[2];
我在 android studio 測試
checksum = (byte)0x01+(byte)0x02+(byte)0x03; --->可以編譯
byte a = 0x01;
byte b = 0x02;
byte c = 0x03;
checksum = a+b+c; ---->卻不行, error 訊息說 imcompatiable type, requried byte
but find int.
checksum = (byte)a+(byte)b+(byte)c; 一樣 error.訊息說byte不需要,a已經是byte了
checksum = (byte)((byte)a+(byte)b+(byte)c) -->可以過,但和裝置認定的checksum
不同。因為在手機端他是用int去作
加法,再強制轉換成byte。
怎回事阿.. 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 58.115.110.197
※ 文章網址: https://www.ptt.cc/bbs/java/M.1497275348.A.441.html
※ 編輯: blueblueChen (58.115.110.197), 06/12/2017 21:52:21
→
06/12 22:24, , 1F
06/12 22:24, 1F
→
06/13 08:30, , 2F
06/13 08:30, 2F
→
06/13 08:31, , 3F
06/13 08:31, 3F
→
06/13 08:32, , 4F
06/13 08:32, 4F
推
06/13 22:02, , 5F
06/13 22:02, 5F
→
06/15 22:53, , 6F
06/15 22:53, 6F
java 近期熱門文章
PTT數位生活區 即時熱門文章