java 如何清屏
在 Java 中清屏的方法
使用 ANSI 转义序列
在支持 ANSI 转义序列的终端(如 Linux/Mac 终端或 Windows 10+ 的某些终端)中,可以通过打印特定转义字符实现清屏:
System.out.print("\033[H\033[2J");
System.out.flush();
\033[H 将光标移动到左上角,\033[2J 清除整个屏幕。注意:此方法可能不适用于老旧 Windows 终端。
通过执行系统命令
调用系统命令实现跨平台清屏,但需注意平台兼容性:
public static void clearScreen() {
try {
String os = System.getProperty("os.name").toLowerCase();
ProcessBuilder pb = os.contains("win")
? new ProcessBuilder("cmd", "/c", "cls")
: new ProcessBuilder("clear");
pb.inheritIO().start().waitFor();
} catch (Exception e) {
e.printStackTrace();
}
}
- Windows 使用
cls命令,Linux/Mac 使用clear命令。 - 需处理可能的
IOException和InterruptedException。
输出多个空行模拟清屏
简单但不够精确的方法,通过输出大量空行模拟清屏效果:
for (int i = 0; i < 50; i++) {
System.out.println();
}
适用于快速调试场景,但无法真正清除屏幕历史内容。

注意事项
- ANSI 转义序列需终端支持,Windows 旧版 CMD 可能无效。
- 系统命令方式可能受安全策略限制(如某些服务器环境)。
- 在 IDE 的控制台中,以上方法可能表现不一致,建议直接在系统终端测试。






