У меня есть перечисление, и мне нужно привязать эти значения к переключателю в другом классе, помогите, пожалуйста, я запутался
public enum GSProccesingType {
bigCover,
cover,
other
}
class Test {
switch (GSProccesingType){
case bigCover:
break;
case cover:
break;
case default:
}
}

Switch принимает выражение значения, а не тип даже для числа.
1) У вас не может быть сырых операторов в объявлении класса; они должны быть в методе или блоке инициализации. 2) Вы должны указать switch по значению, а не по типу.
case default: также является синтаксической ошибкой. Вы имели в виду default: или case other:?
Вы должны следовать Соглашениям об именах Java: перечисления считаются константами и поэтому должны быть записаны в UPPER_SNAKE_CASE.
Кроме того, что вы ожидаете, что когда вы так запишете свой оператор switch?




Сначала вам нужно создать объект. Затем используйте этот объект в операторе switch. Как показано ниже:
GSProccesingType type = GSProccesingType.cover;. // type will hold any one of the enum values. Cover is one such value
switch(type){...}
Для вашего примера вам нужно поставить bigCover в коммутатор
почему .cover, если у меня есть в enum 3 значения: bigCover, cover и другие?
Это пример. Объект будет содержать любое из значений перечисления
Не могу понять .cover А это что?
В вашем случае bigCover содержит значение перечисления. Поместите эту переменную в переключатель.
@TerletskiyAlexander Идеальный пример, когда вы не прочитали тему полностью и сразу перешли к реализации. Вы должны сначала понять what is ENUM
@TerletskiyAlexander ты раньше кодировал на C? В языке C вы можете сразу получить значение перечисления. Но с Java вам нужно сначала получить родительский элемент перечисления GSProccessingType. Также вам понадобится непостоянное выражение при переходе к оператору switch. Например GSProccesingType yourExpression; yourExpression = GSProccesingType (dot) (your selected enum); switch ( yourExpression){ case GSProccesingType.bigCover: break; case GSProccesingType.cover: break; case GSProccesingType.other: break; case default: ;}
в чем путаница?