首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java 控制台輸入循環處理:直到輸入 "exit" 退出

     編輯:程式設計疑難解答

需求場景

編寫一個控制台程序,持續讀取用戶輸入的字符,根據不同字符執行對應邏輯,直到用戶輸入 "exit" 才退出循環。

標準實現代碼

import java.util.Scanner;

public class InputLoopDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("請輸入字符(輸入 exit 退出):");
        
        String input;
        while (!(input = scanner.next()).equals("exit")) {
            switch (input) {
                case "a":
                    System.out.println("gg");
                    break;
                default:
                    System.out.println("輸入錯誤");
                    break;
            }
        }
        System.out.println("程序已退出");
        scanner.close();
    }
}

關鍵點解析

  1. Scanner.next():讀取下一個以空白分隔的 token,自動跳過空白字符。
  2. 賦值表達式在條件中:(input = scanner.next()).equals("exit") 先賦值再判斷,簡潔高效。
  3. switch-case 結構:清晰處理多條件分支,default 兜底無效輸入。
  4. 資源關閉:循環結束後調用 scanner.close() 釋放資源。

常見變體

  • 使用 scanner.nextLine() 讀取整行(含空格)。
  • 加入 try-with-resources 自動關閉:try (Scanner scanner = new Scanner(System.in)) { ... }
  • 處理大小寫不敏感:input.equalsIgnoreCase("exit")

此模式適用於所有基於控制台的交互式命令行工具開發。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved