Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Switch-case оператор | Основні Типи та Операції
Основи Java
course content

Зміст курсу

Основи Java

Основи Java

1. Початок Роботи
2. Основні Типи та Операції
3. Цикли
4. Масиви
5. String

book
Switch-case оператор

Handling Multiple Different Conditions

When we have many conditions to check, using multiple if-else chains may not be convenient.

For example:

java

Main

copy
12345678910111213141516171819
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `if` statement int a = 30; if (a == 10) { System.out.println(10); } else if (a == 20) { System.out.println(20); } else if (a == 30) { System.out.println(30); } else if (a == 40) { System.out.println(40); } else { System.out.println(a); } } }

Обробка декількох різних умов

Коли нам потрібно перевірити багато умов, використання великого ланцюжка if-else може бути незручним.

Наприклад:

java

Main

copy
12345678910111213141516171819
package com.example; public class Main { public static void main(String[] args) { //you can change the value of variable "a" to test the if statement int a = 30; if (a == 10) { System.out.println(10); } else if (a == 20) { System.out.println(20); } else if (a == 30) { System.out.println(30); } else if (a == 40) { System.out.println(40); } else { System.out.println(a); } } }

Ми бачимо, що це не виглядає чисто і професійно. Для таких випадків у Java передбачено інструкцію switch-case.

Switch - Case Statement

Оператор switch-case складається з декількох частин:

The Keyword "break;"

We use this keyword to terminate the execution of a switch-case statement and exit its body. This word is often used in loops, which we will discuss in the following chapters. Use this keyword when you need to break out of a code block and stop its execution.

У коді вище ти можеш побачити, що ми використовуємо блоки case для вибіркового виконання операцій. Ми покладаємося на expression, який дещо відрізняється від condition. Тут ми вставляємо значення або вираз. Наприклад, 10 / 2. У цьому випадку буде виконано блок case з сигнатурою case 5, тому що вираз вище дорівнює 5.

Ми також можемо використовувати умову. У цьому випадку нам потрібно записати булевий вираз у блоці виразів, і він повинен виглядати приблизно так: 10 / 2 == 5. Потім треба написати два випадки:

Але ця структура буде майже не відрізнятися від звичайного if-else.

java

Main

copy
123456789101112131415161718192021222324
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 30; switch (a) { case 10: System.out.println(10); break; case 20: System.out.println(20); break; case 30: System.out.println(30); break; case 40: System.out.println(40); break; default: System.out.println("There is no matching value"); } } }

Тепер давайте покращимо код, який ми написали вище, використовуючи конструцію switch-case:

Let's look at the switch-case block scheme:

Розглянемо блок-схему switch-case:

java

Main

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 10; switch (a) { case 10: System.out.println(10); case 20: System.out.println(20); case 30: System.out.println(30); case 40: System.out.println(40); default: System.out.println("There is no matching value"); } } }

Як бачимо, випадків може бути скільки завгодно. Для кожного випадку потрібна своя умова та код, який буде виконуватися, коли наша програма увійде в блок case. Бажано використовувати ключове слово break;, тому що програма не вийде з блоку switch, поки не будуть виконані всі блоки case. Блок default буде виконано, якщо ми не ввели жодного з наших case-блоків або не використали ключове слово break;.

Давайте розглянемо інший приклад без ключових слів break;:

1. What will be output to the console?

2. Why do we need the break keyword?

What will be output to the console?

What will be output to the console?

Виберіть правильну відповідь

Why do we need the ``break`` keyword?

Why do we need the break keyword?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 6
We're sorry to hear that something went wrong. What happened?
some-alt