Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.88 KB | None | 0 0
  1. package com.company;
  2.  
  3. // Импорт либ
  4. import java.util.ArrayList;
  5. import java.util.Scanner;
  6.  
  7. public class Main {
  8.  
  9.     public static void main(String[] args) {
  10.         // Переменные, необходимые для работы меню
  11.         Scanner userInput = new Scanner(System.in);
  12.         int numUserInput = 100;
  13.  
  14.         show_menu();
  15.         System.out.print("Пожалуйста, введите номер меню:");
  16.         do {
  17.             numUserInput = control_property();
  18.             switch (numUserInput) {
  19.                 case 0:
  20.                     System.out.println("Программа завершается");
  21.                     starting_threads();
  22.                     break;
  23.                 case 1:
  24.                     System.out.println("Информация о дочерних потоках");
  25.                     starting_threads();
  26.                     break;
  27.                 case 2:
  28.                     show_menu();
  29.                     System.out.print("Пожалуйста, введите номер меню:");
  30.                     break;
  31.                 default:
  32.                     System.out.println("К сожалению, такого пункта в меню нет. Попробуйте еще раз");
  33.                     show_menu();
  34.                     System.out.print("Пожалуйста, введите номер меню:");
  35.                     break;
  36.             }
  37.         } while (numUserInput != 0);
  38.         userInput.close();
  39.     }
  40.     // Меню программы
  41.     private static void show_menu() {
  42.         System.out.println("0 - Выйти из программы");
  43.         System.out.println("1 - Начать/Повторить работу главного процесса");
  44.         System.out.println("2 - Вызвать меню");
  45.     }
  46.  
  47.     // Создание и отработка потоков
  48.     private static void starting_threads() {
  49.         try {
  50.             ArrayList <basicThread> bscList = new ArrayList<basicThread>();
  51.             for (int i = 0; i < 5; ++i) {
  52.                 basicThread thread = new basicThread(Integer.toString(i));
  53.                 bscList.add(thread);
  54.             }
  55.             for (int i = 0; i < bscList.size(); ++i) {
  56.                 bscList.get(i).start();
  57.             }
  58.         }
  59.         catch (Exception e) {
  60.             System.out.println("Ошибка!" + e);
  61.         }
  62.     }
  63.  
  64.     // Защита от дурака
  65.     public static int control_property() {
  66.         Scanner userInput = new Scanner(System.in);
  67.         while (!userInput.hasNextInt()) {
  68.             System.out.println("Некорректный ввод. Необходимо ввести число.");
  69.             show_menu();
  70.             System.out.print("Введите команду: ");
  71.             userInput.next();
  72.         }
  73.         return userInput.nextInt();
  74.     }
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement