Java 17 Null Case с соответствием образамJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Java 17 Null Case с соответствием образам

Сообщение Anonymous »

У меня есть проект Java 17 с использованием Eclipse 2022-03 и OpenJdk 17: < /p>

Код: Выделить всё

openjdk 17.0.2 2022-01-18
OpenJDK Runtime Environment Temurin-17.0.2+8 (build 17.0.2+8)
OpenJDK 64-Bit Server VM Temurin-17.0.2+8 (build 17.0.2+8, mixed mode, sharing)
< /code>
Я пытаюсь использовать новые функции переключения Java 17, поэтому я попробовал это методом: < /p>
return switch(testEnum) {
case foo -> newFoo();
case bar -> newBar();
}
< /code>
Это работает нормально. Но тогда я попробовал это (потому что значение может быть null 
):
return switch(testEnum) {
case foo -> newFoo();
case bar -> newBar();
case null -> newDefault();
}
< /code>
Eclipse подчеркивает Null < /code> красным и говорит: < /p>

Сопоставление шаблона в коммутаторе является предварительным и отключенным по умолчанию. Использовать-eNable-preview для включения < /p>
< /blockquote>
Компиляция через Maven. Производит: < /p>
[ERROR] /project/src/main/java/com/example/FooBar.java:[432,38] null in switch cases is a preview feature and is disabled by default.
[ERROR] (use --enable-preview to enable null in switch cases)
< /code>
My Maven Project имеет: < /p>

17

< /code>
Я знаю, что настройка выпуска компилятора не игнорируется; В противном случае это было бы дефолт на Java 8 (согласно моим родителям) и вообще не позволяет сопоставлять шаблоны. Что я делаю не так?


Подробнее здесь: https://stackoverflow.com/questions/725 ... n-matching
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»