package shopping;
import java.util.Scanner;
public class jieMian {
public static void main(String[] args) {
denglu();
}
public static void denglu() {
//宣告
String name = "admin";
int num = 123;
int a;
System.out.println("\t\t歡迎使用我行我素購物管理系統!");
System.out.println("\t\t1.登錄系統");
System.out.println("\t\t2.退出");
System.out.println("***************************************");
Scanner input = new Scanner(System.in);
for (; ; ) {
System.out.println("請選擇,輸入數字:");
if (input.hasNextInt()) {
a = input.nextInt();
if (a == 1) {
for (; ; ) {
System.out.println("請輸入賬號:");
String name1 = input.next();
System.out.println("請輸入密碼:");
int num1 = input.nextInt();
if (name1.equals(name) && num1 == num) {
break;
} else {
System.out.println("用戶名密碼錯誤,請重新輸入!");
}
}
break;
} else if (a == 2) {
System.out.println("歡迎下次光臨!");
break;
} else {
System.out.println("輸入錯誤,請重新輸入!");
}
} else {
System.out.println("輸入錯誤,請重新輸入!");
continue;
}
}
}
}
uj5u.com熱心網友回復:
input.hasNextInt() 改成 input.hasNext() 試試uj5u.com熱心網友回復:
/**
* @author :jiaolian
* @date :Created in 2021-01-15 13:51
* @description:邏輯錯誤
* @modified By:
* 公眾號:叫練
*/
public class jieMian {
public static void main(String[] args) {
denglu();
}
public static void denglu() {
//宣告
String name = "admin";
int num = 123;
String a;
System.out.println("\t\t歡迎使用我行我素購物管理系統!");
System.out.println("\t\t1.登錄系統");
System.out.println("\t\t2.退出");
System.out.println("***************************************");
Scanner input = new Scanner(System.in);
for (; ; ) {
System.out.println("請選擇,輸入數字:");
if (input.hasNext()) {
a = input.next();
try {
//定義輸入的數字;
int count = Integer.valueOf(a);
if (count == 1) {
for (; ; ) {
System.out.println("請輸入賬號:");
String name1 = input.next();
System.out.println("請輸入密碼:");
int num1 = input.nextInt();
if (name1.equals(name) && num1 == num) {
break;
} else {
System.out.println("用戶名密碼錯誤,請重新輸入!");
}
}
break;
} else if (count == 2) {
System.out.println("歡迎下次光臨!");
break;
} else {
System.out.println("輸入錯誤,請重新輸入!");
}
} catch (Exception e) {
System.out.println("輸入錯誤,請重新輸入!");
}
} else {
System.out.println("輸入錯誤,請重新輸入!");
continue;
}
}
}
}
這里的問題是邏輯錯誤,控制臺本身應該接收的字串,但是你硬用hasNextInt()也沒問題,但別忘了用try catch做例外處理哦,如對你有幫助,點個關注哦
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/249217.html
標籤:Java相關
上一篇:ideal 專案手賤在右側maven project 欄店里remove maven project
下一篇:二叉樹中序排序的疑惑
