直接对单个字符用Character.toUpperCase()转大写;字符串需用String.toUpperCase()或遍历每个字符手动转换。

直接对控制台读入的单个字符调用 Character.toUpperCase() 即可转为大写,但要注意它只处理单个 char,不适用于字符串;若输入的是字符串(比如用户敲了一串命令),需先提取字符或遍历处理。
读取单个字符并转大写
使用 Scanner 的 next().charAt(0) 或 System.in.read() 获取首个字符,再用 Character.toUpperCase() 转换:
- // 示例:读一个字母,强制转大写
Scanner sc = new Scanner(System.in);char input = sc.next().charAt(0); // 读取第一个非空格字符char upper = Character.toUpperCase(input);System.out.println("大写后: " + upper);
处理完整指令字符串(推荐方式)
控制台录入的“指令”通常是字符串(如 "quit"、"save"),Character.toUpperCase() 不能直接用于字符串。应改用 String.toUpperCase(),更简单且安全:
String cmd = sc.nextLine().trim(); // 读整行并去首尾空格String upperCmd = cmd.toUpperCase(); // 全转大写,如 "load" → "LOAD"- // 后续可用 switch/equals 判断指令,例如 if ("SAVE".equals(upperCmd)) { ... }
若坚持用 Character.toUpperCase 处理字符串中的每个字符
可手动遍历字符串的每个字符,逐个转换后拼接(适合教学或特殊过滤场景):
StringBuilder result = new StringBuilder();for (int i = 0; ichar c = cmd.charAt(i);result.append(Character.toUpperCase(c));}String upperCmd = result.toString();
注意事项
Character.toUpperCase() 对非字母字符(数字、符号、空格)原样返回,不会报错;它基于 Unicode,能正确处理带重音的拉丁字母(如 'é' → 'É')和部分其他语言字符,但不适用于中文、日文等;中文字符调用后仍是原字符。

















