Может ли оператор Switch в Java использовать диапазоны значений в каждом случае?
В Java оператор Switch оценивает одно значение по набору регистров этикетки. Однако метки вариантов могут содержать только отдельные значения, а не диапазоны. Это может заставить вас задаться вопросом, возможно ли такое поведение, черпая вдохновение из таких языков, как Objective C.
Подход Java к обработке диапазонов
В отличие от Objective C, Java не поддерживает изначально поддерживают диапазоны значений в операторах выбора случая. Это означает, что предоставленный вами фрагмент кода приведет к ошибке компиляции.
Вместо этого Java предлагает обходной путь с использованием логических сравнений. Вы можете определить вспомогательный метод, например 'isBetween', чтобы определить, попадает ли значение в диапазон:
public static boolean isBetween(int x, int lower, int upper) { return lowerИспользуя этот метод, вы можете переписать оператор переключения, используя конструкции if-else if:
if (isBetween(num, 1, 5)) { System.out.println("testing case 1 to 5"); } else if (isBetween(num, 6, 10)) { System.out.println("testing case 6 to 10"); }Используя этот подход, вы можете добиться функциональности диапазонов значений в случаях переключения. Хотя синтаксис Objective C не такой краткий, он остается надежным решением для Java.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3