public class Deom { int a[]=new int[100]; a[0]=1234; a[1]=1234; a[2]=1234; }
上面的寫法是會報錯的!!!
該段代碼沒有在任何方法體內,是永遠不會執行的,所以java在編譯的時候就提示出錯。不光數組,就是其它的任何類型也不能這樣賦值。
賦值是一種操作,不在方法體中,是不能執行的。
當然,定義的同時初始化賦值是可以的。
還有一種方法,使用靜態代碼塊的手段執行。
public class Deom { int a[]=new int[100]; { a[0]=1; a[1]=12; a[2]=123; } }
這種寫法是java的靜態塊,與寫在構造中差不多,但靜態塊會在構造執行前執行。靜態塊只要寫在變量定義的一后面就可以,與你變量的定義沒有關系。
總結:單獨的變量賦值必須在方法中 或靜態代碼塊中。