int num = 40000;
byte first = num/256;
byte second = num%256;
˜q™æ ·åQŒåªè¦?/span>firstæˆ?/span>second‘…过127åQŒå°±ä¼šæº¢å‡ºï¼Œä»Žè€Œåˆòq¶è“væ¥çš„intæ•°å€ég¼šå’ŒåŽŸæ•°å€ég¸ä¸€è‡´ã€?/span>
int input2 = 130;
byte a3 = (byte) input2;
input2 = a3;
System.out.println(input2);
对于上述代ç åQŒç»“æžœäØ“-126åQŒè€Œä¸æ˜¯å¼€å§‹çš„130åQŒä¹Ÿæ˜¯æº¢å‡ºçš„问题åQŒæ‰€ä»¥ä¸€å®šè¦æ³¨æ„ã€?/span>
解决æ–ÒŽ³•åQ?/span>
½W¬ä¸€¿Uï¼šè¾ƒäØ“ä¸å½»åº•ï¼Œå¯¹äºŽæ£æ•´æ•°æ¥è¯ß_¼Œå¯ä»¥é™¤ä»¥127åQŒä»Žè€Œä‹Ébyteä¸ä¼šæº¢å‡º
½W¬äºŒ¿Uï¼šè½¬åŒ–çš„æ—¶å€™æŒ‰ä½æ“作,从而ä¸ä½¿ç”¨å¼ºåˆ¶è½¬åŒ–æŸå¤±¾_‘Öº¦åQ?/span>
// ž®?/span>iSourceè½¬äØ“é•¿åº¦ä¸?/span>iArrayLençš?/span>byte数组åQŒå—节数¾l„çš„ä½Žä½æ˜¯æ•´åž‹çš„低å—节ä½
public static byte[] toByteArray(int iSource, int iArrayLen)
{
byte[] bLocalArr = new byte[iArrayLen];
for ( int i = 0; (i < 4) && (i < iArrayLen); i++)
{
bLocalArr[i] = (byte)( iSource>>8*i & 0xFF );
}
return bLocalArr;
}
// ž®?/span>byte数组bRefArrè½¬äØ“ä¸€ä¸ªæ•´æ•?/span>,å—èŠ‚æ•°ç»„çš„ä½Žä½æ˜¯æ•´åž‹çš„低å—节ä½?/span>
public static int toInt(byte[] bRefArr)
{
int iOutcome = 0;
byte bLoop;
for ( int i =0; i<4 ; i++)
{
bLoop = bRefArr[i];
iOutcome+= (bLoop & 0xFF) << (8 * i);
}
return iOutcome;
}