我有一个功能齐全的代码,但我想减少和简化它。下面是代码,您可以看到重复打印的方式。他们的任务是制作菜单,并根据用户的需要为其启用某些命令
我正在用Java工作,现在我需要制作一个程序来完成所有这些工作,但是用更少的代码。
package hr.atos.praksa.josipmaricevic.zadatak15;
import java.util.Scanner;
public class Users {
Scanner input = new Scanner(System.in);
private String user;
Users(String user_s) {
user = user_s;
}
public void startApp() throws Exception {
switch(user) {
case "user":
userUser();
break;
case "superuser":
superuserUser();
break;
case "admin":
adminUser();
break;
}
}
public void adminUser() throws Exception {
Employee worker = new Employee();
MyArticle article = new MyArticle();
outer: while(true) {
System.out.print("\n"
+ "-------Glavni--Izbornik-------\n"
+ "1. Zaposlenici\n"
+ "2. Artikli\n"
+ "3. Izvjesca\n"
+ "0. Prekini aplikaciju\n"
+ "Odaberite radnju: ");
String choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
outer2: while(true) {
System.out.print("---------Zaposlenici---------\n"
+ "1. Dodaj zaposelenika\n"
+ "2. Ispisi zaposlenike\n"
+ "3. Obrisi zaposlenika\n"
+ "4. Uredi zaposlenika\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
worker.saveEmployee();
break;
case "2":
worker.listEmployee();
break;
case "3":
worker.removeEmployee();
break;
case "4":
worker.editEmployee();
break;
case "0":
break outer2;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "2":
outer3: while(true) {
System.out.print("----------Artikli-------------\n"
+ "1. Dodaj artikl\n"
+ "2. Ispisi artikl\n"
+ "3. Obrisi artikl\n"
+ "4. Uredi artikl\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
article.saveArticle();
break;
case "2":
article.listArticle();
break;
case "3":
article.removeArticle();
break;
case "4":
article.editArticle();
break;
case "0":
break outer3;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "3":
outer3: while(true) {
System.out.print("-----------Izvjesca-----------\n"
+ "1. Izvjestaj radnika po radnom mjestu\n"
+ "2. izvjestaj o trenutnom profitul\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
worker.printReport();
break;
case "2":
article.currentProfit();
break;
case "0":
break outer3;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "0":
System.out.println("Kraj rada");
break outer;
default:
System.out.println("Krivi unos!!");
break;
}
}
}
public void superuserUser() throws Exception {
Employee worker = new Employee();
MyArticle article = new MyArticle();
outer: while(true) {
System.out.print("\n"
+ "-------Glavni--Izbornik-------\n"
+ "1. Zaposlenici\n"
+ "2. Artikli\n"
+ "3. Izvjesca\n"
+ "0. Prekini aplikaciju\n"
+ "Odaberite radnju: ");
String choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
outer2: while(true) {
System.out.print("---------Zaposlenici---------\n"
+ "1. Dodaj zaposelenika\n"
+ "2. Ispisi zaposlenike\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
worker.saveEmployee();
break;
case "2":
worker.listEmployee();
break;
case "0":
break outer2;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "2":
outer3: while(true) {
System.out.print("----------Artikli-------------\n"
+ "1. Dodaj artikl\n"
+ "2. Ispisi artikl\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
article.saveArticle();
break;
case "2":
article.listArticle();
break;
case "0":
break outer3;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "3":
outer3: while(true) {
System.out.print("-----------Izvjesca-----------\n"
+ "1. Izvjestaj radnika po radnom mjestu\n"
+ "2. izvjestaj o trenutnom profitul\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
worker.printReport();
break;
case "2":
article.currentProfit();
break;
case "0":
break outer3;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "0":
System.out.println("Kraj rada");
break outer;
default:
System.out.println("Krivi unos!!");
break;
}
}
}
public void userUser() throws Exception {
Employee worker = new Employee();
MyArticle article = new MyArticle();
outer: while(true) {
System.out.print("\n"
+ "-------Glavni--Izbornik-------\n"
+ "1. Zaposlenici\n"
+ "2. Artikli\n"
+ "0. Prekini aplikaciju\n"
+ "Odaberite radnju: ");
String choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
outer2: while(true) {
System.out.print("---------Zaposlenici----------\n"
+ "1. Ispisi zaposlenike\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
worker.listEmployee();
break;
case "0":
break outer2;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "2":
outer3: while(true) {
System.out.print("----------Artikli-------------\n"
+ "1. Ispisi artikl\n"
+ "0. Povratak nazad\n"
+ "Odaberite radnju: ");
choice = input.nextLine();
System.out.println();
switch(choice) {
case "1":
article.listArticle();
break;
case "0":
break outer3;
default:
System.out.println("Krivi unos!!");
break;
}
System.out.println();
}
break;
case "0":
System.out.println("Kraj rada");
break outer;
default:
System.out.println("Krivi unos!!");
break;
}
}
}
}