Головна |
switch (month) {
case 12: // FALLSTHROUGH
case 1: // FALLSTHROUGH
case 2:
season = "Winter";
Break;
case 3: // FALLSTHROUGH
case 4: // FALLSTHROUGH
case 5:
season = "Spring";
Break;
case 6: // FALLSTHROUGH
case 7: // FALLSTHROUGH
case 8:
season = "Summer";
Break;
case 9: // FALLSTHROUGH
case 10: // FALLSTHROUGH
case 11:
season = "Autumn";
Break;
default:
season = "Bogus Month";
}
System.out.println ("April is in the" + season + ".");
}}
Нижче наведено ще більш корисний приклад, де оператор switch використовується для передачі управління відповідно до різними кодами символів у вхідному рядку. Програма підраховує кількість рядків, слів та символів у текстовому рядку.
class WordCount {
static String text = "Now is the tifne \ n" +
"For all good men \ n" +
"To come to the aid \ n" +
"Of their country \ n" +
"And pay their due taxes \ n";
static int len ??= text.length ();
public static void main (String args []) {
boolean inWord = false;
int numChars = 0;
int numWords = 0;
int numLines = 0;
for (int i = 0; i
char з = text.charAt (i);
numChars ++;
switch (с) {
case '\ n': numLines ++; // FALLSTHROUGH
case '\ t': // FALLSTHROUGH
case '': if (inWord) {
numWords ++;
inWord = false;
}
Break;
default: inWord = true;
}
}
System.out.println ("\ t" + numLines + "\ t" + numWords + "\ t" + numChars);
}}
У цій програмі для підрахунку слів використано кілька концепцій, що відносяться до обробки рядків. Детально ці питання будуть розглянуті в розділі 9.
Return
У наступному розділі ви дізнаєтеся, що в Java для реалізації процедурного інтерфейсу до об'єктів класів використовується різновид підпрограм, званих методами. Підпрограма main, яку ми використовували до сих пір - це статичний метод відповідного класу-прикладу. У будь-якому місці програмного коду методу можна поставити оператор return, який призведе до негайного завершення роботи і передачі управління коду, який викликав цей метод. Нижче наведено приклад, який ілюструє використання оператора return для негайного повернення управління, в даному випадку - виконуючої середовищі Java.
class ReturnDemo {
public static void main (String args []) {
boolean t = true;
System.out.println ("Before the return"); // Перед оператором return
Break b; | For (ініціалізація; завершення; ітерація) тіло;
Long m; | приведення типу | Автоматичне перетворення типів у виразах | багатовимірні масиви | арифметичні оператори | | | Бітові оператори присвоювання | Булеві логічні оператори | If-else |