2016-11-28 2 views
-2

私はエラーを取得しています:Javaでこの「不正な式の開始」エラーをどのように修正する必要がありますか?

Error: (65, 3) java: illegal start of expression

は、この行を参照:

public boolean equals(WordList wordList) 

私はこれは文字列配列WordList[]の範囲で何かによって引き起こされていると思います。しかし、コンストラクタで変数のインスタンスを呼び出しているので、これは受け入れられるはずです。

WordList[]の構成をpublic equals(WordList wordList),boolean equals(WordList wordList)などの組み合わせに変更しようとしましたが、これらの組み合わせでエラーメッセージが変更されていません。

コード:

public class WordList 
{ 
String[] words; 
public int count; 

//constructor 
public WordList() 
{ 
//create a size two array of strings and assign it to words instance variable 
words = new String[2]; 

count = 0; 
} 

public int addWord(String word) 
{ 
if(findWord(word) == -1) //word not in list 
{ 
    return count; 
} 
if(words.length == count) 
{ 
    String[] temp = new String[words.length * 2]; 
    for(int n = 0; n < words.length; n++) 
    { 
    temp[i] = words[i]; 
    } 
    words = temp; 
} 
words[count] = word; 
count++; 
return count; 
} 

public void removeWord(String word) //void bc returns nothing 
{ 
int index = findWord(word); // to minimize how many times we call method 
if(index == -1) 
{ 
    return; 
} 

for(int n = index; n < count -1; n++) 
{ 
    words[n] = words[n + 1]; 
} 
words[count - 1] = ""; 
count --; 
return; 
} 

public int findWord(String word) { 
//iterate over each word in current list 
//return index of word if found 
for (int i = 0; i < count; i++) 
{ 
    if (words[i].equals(word)) 
    { 
    return i; 
    } 
    return -1; 
} 

public boolean equals(WordList wordList) 
{ 
boolean boolEquals; 
//override equals method in Object class 
//first checks if number of words in each WordList is equal 
//if true -> iterate through all words in 1 of lists + 
if(count == wordlist.count) 
{ 
    for(int i = 0; i < count; i++) 
    { 
    if(findWord(words[i]) == -1) 
    { 
     boolEquals = false; 
    } 
    boolEquals = true; 
    } 
} 
boolEquals = false; 

return boolEquals; 
} 

public String toString() 
{ 
//provide number of words in a string and then list each word on a new line 
String result = ""; 
result += "There are " + count + " words in the word list: \n"; 
for(int i = 0; i < count; i++) 
{ 
    result += words[i] + "\n"; 
} 
return result; 
} 

public static void main(String[] args) 
{ 
} 

このエラーメッセージの原因は何?私はコンストラクタを保ち、できるだけコードを少し変更して、他の誰かからコードを取得するのではなく、これを学習体験にすることを好みます。

あなたはおそらく「私は」あまりにもライン26で「N」で置き換える必要がありますあなたのコードは、行62で「}」不足している

+7

これは、適切なタブで簡単に修正できます。 – Compass

+2

あなたのコードが分かりやすくインデントされていれば、問題がどこにあるのかを簡単に知ることができます。 – khelwood

+0

@Compassタブをどうすればいいですか? –

答えて

2

... ...

+0

ありがとうございました、それらの提案で今すぐ修正されました –

3

構文エラー - 不足している}でメソッド

public int findWord(String word) {

+0

ありがとう、それは今修正されました –

関連する問題