Android: ошибка компиляции в моем операторе if else

#android #if-statement

#Android #if-statement

Вопрос:

Компилятор Eclispe показывает мне ошибку sntax в моих операторах else в моем else if. Кто-нибудь может сказать мне, что не так? Спасибо!

код

 //click on one of chapters
    list.setOnItemClickListener(new OnItemClickListener() 
    {
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
        {

            String item = ((TextView)view).getText().toString();

            Toast.makeText(getBaseContext(), item, Toast.LENGTH_LONG).show();

            //Choose Chapter 1
            if (item.equalsIgnoreCase("I. The Global Business Environment")); {
            //go to chapter 1
            startActivity(new Intent(ChaptersActivity.this, Chapter1Activity.class));
            } else if (item.equalsIgnoreCase("II. Information Systems")); {
                //go to chapter 2
                startActivity(new Intent(ChaptersActivity.this, Chapter2Activity.class));
            }

          //Choose Chapter 3
            else if (item.equalsIgnoreCase("III. Operations Management"));
            {
                //go to chapter 3
                startActivity(new Intent(ChaptersActivity.this, Chapter3Activity.class));
            }

          //Choose Chapter 4
            else if (item.equalsIgnoreCase("IV. Marketing"));
            {
                //go to chapter 4
                startActivity(new Intent(ChaptersActivity.this, Chapter4Activity.class));
            }

          //Choose Chapter 5
            else if (item.equalsIgnoreCase("V. Managing Human Capital"));
            {
                //go to chapter 5
                startActivity(new Intent(ChaptersActivity.this, Chapter5Activity.class));
            }

          //Choose Chapter 6
            else if (item.equalsIgnoreCase("VI. Preparing for the Examination"));
            {
                //go to chapter 6
                startActivity(new Intent(ChaptersActivity.this, Chapter6Activity.class));
            }
        }
    });
  

Они отображают ошибку sntax в кодовых словах ‘else’, есть идеи?

Комментарии:

1. лучший способ сделать это — использовать атрибут id в ваших представлениях, затем вызвать view.getId() и поместить в оператор switch .

Ответ №1:

semicolon В конце ваших условий if у вас есть a:

 if (item.equalsIgnoreCase("I. The Global Business Environment")); {
  

Это завершает оператор if, { запускает новый блок, затем else появляется из ниоткуда.

Ответ №2:

; Отображается в каждом if-else операторе условия. Вам лучше удалить их и попытаться собрать его снова 🙂