这是我的代码。我一直坚持使用开关盒的东西。我试着完成我的Java界面(控制台)作业。我们的想法是建立一个登录系统。
我想知道当用户点击LOGOUT / LOG OFF时如何返回第一个LOGIN菜单(主菜单)。
interface Login{
public void validasi();
public void cekData();
}
class DataLogin implements Login{
private String namaUser1="mhs";
private String pass1="mahasiswa";
private String namaUser2="mahasiswa";
private String pass2="pratikum";
public void setName(String name, String name2){
this.namaUser1 = name;
this.namaUser2 = name2;
}
public String getName(){
return namaUser1;
}
public String getName2(){
return namaUser2;
}
public void setPsw(String pass, String pas2){
this.pass1 = pass;
this.pass2 = pas2;
}
public String getPsw(){
return pass1;
}
public String getPsw2(){
return pass2;
}
这是我的checkData方法。
public void cekData(){
DataLogin u = new DataLogin();
String Nama, Psw, log, mau;
Scanner input = new Scanner(System.in);
Scanner e = new Scanner(System.in);
System.out.print("Username : "); Nama=input.nextLine();
System.out.print("Password : "); Psw=input.nextLine();
if (Nama.equalsIgnoreCase(u.getName())&&Psw.equalsIgnoreCase(u.getPsw())){
System.out.println("(Login Success!)");
System.out.println("-----------------");
do{
System.out.println("Selamat Datang, "+Nama+"!!");
System.out.println("MENU PILIHAN");
System.out.println("A. TEST KENDARAAN");
System.out.println("B. LOG OFF");
System.out.println("-----------------");
System.out.print("Masukkan Pilihan Anda : ");log=input.nextLine();
switch(log){
case "A": case "a":
//SOME CODES.. NOT IMPORTANT
break;
case "B": case "b":
System.exit(0);
break;
default:
System.out.println("ERROR, Pilihan Tidak Tersedia");
break;
}
System.out.print("Mau Coba Lagi? [Y/T] = ");mau = e.next();
}while(mau.equals("Y")||(mau.equals("y")));
}
else{
System.out.println("(Login Gagal!)");
System.out.println("Periksa Kembali Username dan Password Anda");
System.out.println("------------------------------------------");
}
}
}
这是我的主菜单。
class TestLogin{
public static void main(String[] args){
DataLogin u = new DataLogin();
Scanner pil = new Scanner(System.in);
String pilih;
System.out.println("MAIN MENU");
System.out.println("----------");
System.out.println("MENU PILIHAN");
System.out.println("A. LOGIN");
System.out.println("B. EXIT");
System.out.println("----------");
System.out.print("Masukkan Pilihan Anda : ");pilih=pil.nextLine();
switch(pilih){
case "A":
case "a":
u.cekData();
break;
case "B":
case "b":
System.exit(0);
break;
default:
{System.out.print("ERROR");}
}
}
}
答案 0 :(得分:0)
当用户退出时,您可以使用单独的方法移动主菜单并再次调用它。
答案 1 :(得分:0)
我没试过,但这应该有效: -
1)将 main()方法的内容包装成循环。
2)在 cekData()中,如果用户选择Log Out而不是System.exit(),则返回。
在实现上述操作后,如果用户选择Log Out,则线程将返回main()方法,该方法将循环并再次显示。