2017-01-20 3 views
0

何らかの理由でEclipseはnpcname_m [0] = "steve"で '' 'エラーを表示し続けます。私は ']'の予想されるエラーが発生し続ける[Java]

String npcname_m[]=new String[10]; 
    npcname_m[0]="Steve"; 
    npcname_m[1]="John"; 
    npcname_m[2]="Mark"; 
    npcname_m[3]="Andrew"; 
    npcname_m[4]="Matthew"; 
    npcname_m[5]="Luke"; 
    npcname_m[6]="Miguel"; 
    npcname_m[7]="Michael"; 
    npcname_m[8]="Josh"; 
    npcname_m[9]="Alex"; 

コード全体

public class npc 
{ 
    //NPC Types; Speci 
    public enum npctype{villager, mob, special, hostile, passive, placeholder} 
    npctype npc_type =npctype.placeholder; 
    String npcname_m[]=new String[10]; 
    npcname_m[0]="Steve"; 
    npcname_m[1]="John"; 
    npcname_m[2]="Mark"; 
    npcname_m[3]="Andrew"; 
    npcname_m[4]="Matthew"; 
    npcname_m[5]="Luke"; 
    npcname_m[6]="Miguel"; 
    npcname_m[7]="Michael"; 
    npcname_m[8]="Josh"; 
    npcname_m[9]="Alex"; 

    String[] npcname_f = new String[10]; 
    npcname_f[0]="Mariah"; 
    npcname_f[1]="Joyce"; 
    npcname_f[2]="Kaede Akamatsu"; 
    npcname_f[3]="Iruma Miu"; 
    npcname_f[4]="Maki"; 
    npcname_f[5]="Hannah"; 
    npcname_f[6]="Angie"; 
    npcname_f[7]="Grace"; 
    npcname_f[8]="Melissa"; 
    npcname_f[9]="Alex"; 

    public enum npcclass{weak, strong, rare} 
    String name = "Placeholder to avoid problems with garbage collector"; 
    int healthpoints =100; 
    int moneyreward =100; 
    int attackpower=100; 
    Boolean male = true; 

    //code to attack player if player starts dsplaying aggressive behaviour torward friendly NPC's 
    //Placeholder code 
    public void AttackHostilePlayer(){ 
    return; 
    } 

    public void TransformHostileVillager(){ 
     healthpoints= healthpoints + 50; 
     attackpower=attackpower + 50; 
     System.out.println(npc_type); 
     return; 
    } 

    //Generates an npc (Add randomisation later) 
    public void generatenpc(){ 
     male = true; 
     name= "Steve"; 
     npc_type=npctype.villager; 
     return; 
    } 
} 
+0

は 'String []型npcname_m =新しいString [10]使用してみてください;' –

+0

おかげで、それはまだ私にあなたがそれを使用しましたか同じエラー – SpeedProgrammer

+0

を与え、多分追加データ部分は、法の外にあります。 –

答えて

4

Javaの変数定義を除いて、クラスのメソッドの外部にコードを書くことはできません。

public class npc 
{ 
    String[] npcname_m = new String[10]; 

    // INVALID CODE ! npcname_m[0]="Steve"; 

    public npc() { 
     npcname_m[0]="Steve"; 
    } 

} 
+0

これは代わりにこうすることができます: 'String [] npcname_m = {" Steve "、" John "、" Mark "、..." Josh "、" Alex "};' – walen

+1

@walen私は知っていますが、同じコードを再利用してエラーを特定することです。小さなステップで学ぶ方が良い。 –

+0

ポスター(OP)については、答えがあなたのニーズに合っていれば、それを受け入れることを覚えておいてください。私の人か誰が答えたのですか? –

-2

代わりString[] npcname_m=new String[10];を使用してください。

+4

この_deffinitely_は構文エラーになります。 –

+0

あなたが正しいです、私は2番目の[]を削除するのを忘れました – DonTintoretto

+2

上記のコメントが見えましたか?それは問題を解決しませんでした。 –

関連する問題