2016-03-22 4 views
1

私が試してみてください。Javaでbyte []を宣言しますか?

byte[] Data = { 0xA3, 0x34, 0x33, 0x33, 0x00};

が、「0xA3の」で、それはそう何がここでの問題だ、「必要なバイトがintを発見した」と述べましたか?

+0

'byte'sの範囲は-128から127です。' 0xA3'は163. –

+0

@ paulsm4 -128から127です。 –

答えて

2

0xA3は、byteの範囲外です。私は-128 - > +127と考えることができます。

あなたは、より詳細に、「0xA3の」でhere

+0

これはC#で行うので、JAVAでは何をする必要がありますか? – JimmyN

+0

私はあなたが署名のないバイトを探していると思いますか?あなたは何か[ここ](http://stackoverflow.com/q/4266756/2650847)を見つけるかもしれません。 –

+1

@HảiDuyNguyễnバイトにキャスト: 'byte [] Data = {(byte)0xA3,0x34,0x33,0x33,0x00};' – Andreas

1

を見つけることができますそれはそう問題はここに

何の問題があること、Javaのバイトの範囲である、「必要なバイトがintを発見した」と述べました-128..127です。

解決策は0x34の前に(byte)キャストを書く必要があることです。

関連する問題