Строка в переключателе Java - PullRequest
2 голосов
/ 27 сентября 2011
switch(title)
   {
    case "Return":
          returnBooks();
          break;
  }

строки в коммутаторе не поддерживаются в -source 1.6, используйте -source 7 или выше для включения строк в коммутаторе

Итак, я уже установил JDK7, почему компилятор показывает это сообщение и выдает ошибку при компиляции?

Я использую NetBeans

Ответы [ 5 ]

15 голосов
/ 27 сентября 2011

Мне неприятно это говорить, но: прочитайте чертово сообщение об ошибке. Он сообщает вам точно в чем проблема.

Вы компилируете в режиме Java 6, а не компилируете в режиме Java 7.Если вы используете javac, который поставляется с JDK 7, как говорится в сообщении об ошибке, используйте флаг -source 7:

> javac -source 7 {stuff here}
11 голосов
/ 27 сентября 2011

Две ключевые точки из пользовательского запроса:

  1. уже установлен JDK7 и
  2. Использование NetBeans

Итак, NetBeans поставляется с двумя пакетами:

  1. С JDK

Означает, что при установке Netbeans 7 автоматически устанавливается JDK 7 и устанавливается JDK 7 в качестве библиотеки по умолчанию.

  1. без JDK

При установке NetBeans 7 он обнаружил JDK в системе, и, если он найден, он также автоматически настраивает путь к библиотеке, но показывает информацию о пути и версии JDK7.

Все пользователи пытаются дать правильный ответ на этот запрос, но никто не может ответить правильно, как того требовал пользователь, поскольку пользователь также использует NetBeans.

При продолжении редактирования версии Hemal Pandya требуется еще одна вещь для настройки, а именно

RightClick on  Project > properties > and in the categories option select > source. see the  
**Hemal Pandya** edit version to look at image, the source option is available above the   
Libraries option.

И

then select **Source/Binary Format** form bottom and set it to JDK 7 (= 1.7). this is the exact solution
of user's post and I am 100% sure now String in swich will work
4 голосов
/ 27 сентября 2011

В NetBeans перейдите в свойства проекта и измените Java-платформу на Java 7 в библиотеках

2 голосов
/ 03 ноября 2011

Я нашел решение: если вы используете Netbeans 7.1 (даже, 7.0), вам просто нужно выполнить следующее: щелкните правой кнопкой мыши на Project -> Properties -> Sources -> (внизу) Source / Binary Format

Просто выберите JDK 7, и все, вы можете использовать строки в switch!

1 голос
/ 27 сентября 2011

Я не использую NetBeans, но, кажется, есть переключатель соответствия, который по умолчанию установлен на 1.6. Вам нужно будет найти этот переключатель и установить его в 7, как указали другие.

РЕДАКТИРОВАТЬ: я обнаружил, что нашел netbeans.org/kb/docs/java/project-setup.html#projects-jdk. Вы, кажется, сделали второй шаг регистрации JDK. Но, может быть, это не по умолчанию? Следуйте инструкциям, чтобы переключить целевой JDK стандартного проекта. Глядя на изображения, кажется, что в этом диалоге:

enter image description here

...