2016-06-13 78 views
2

我正在使用Android Studio 2.1.2,我試圖聲明和使用一個小字節數組,但我得到的錯誤我不明白。Android字節數組不被識別

有問題的代碼是:

public class RedActivityMain extends AppCompatActivity { 
    byte[] myBuf = new byte[20]; // <-- Compiler likes this line 
    myBuf[0] = 0x23; // <-- Compiler barfs on this line 

報關行似乎是由編譯器,但在分配行,我嘗試分配0×23到myBuf數組的第一個條目被接受導致以下投訴顯示:

Error:(105, 11) error: ']' expected 
Error:(105, 12) error: ';' expected 
Error:(105, 14) error: illegal start of type 
Error:(105, 15) error: <identifier> expected 

而且,當我懸停在Android Studio編輯器,我得到的東西,如「未知類myBuf出錯行;標識預期;而意外的標記

我對Android非常陌生,對Android工作室真的很陌生,我希望有人能推動我朝着正確的方向前進。看起來我沒有在Android工作室中設置正確的東西,因爲Java語法對我來說看起來是正確的,但也許你們中的一個人看到了我忽略的東西。

感謝您的幫助!

回答

2
myBuf[0] = 0x23; // <-- Compiler barfs on this line 

這是因爲該行不在方法中。例如,將其移動到您的onCreate()方法中。

+0

好神......我自己的愚蠢經常引起我的問​​題...謝謝你。非常感激! – HomerJ

-1

嘗試投射到一個字節

myBuf [0] =(byte)0x23; // < - 這行上的編譯器barf

+0

除非常數> = 0x80,否則不需要,並且不會解決錯誤消息所顯示的實際問題。 – EJP