📜  java 终端颜色 - Java (1)

📅  最后修改于: 2023-12-03 15:31:34.275000             🧑  作者: Mango

Java 终端颜色

在使用 Java 编写终端程序时,我们可以使用 ANSI 转义序列来实现终端颜色的改变。ANSI 转义序列由一系列转义字符组成,以 \033[ 开头。其中,[ 后的数字和字符表示一种颜色或样式。

实现颜色

在 Java 中,我们可以使用 System.out.print() 或 System.out.println() 进行输出。为了在输出中使用 ANSI 转义序列,我们需要使用转义字符 \033。然后,将要改变的样式或颜色添加到转义字符中。

例如,要将输出的文本变为红色,可以使用 \033[31m,将文本打印完后,可以使用 \033[0m 将颜色重置为默认值。

public static void main(String[] args) {
    System.out.println("\033[31mHello, Java!\033[0m");
}

输出:

Hello, Java!
颜色代码

下表列出了 ANSI 转义序列中可用的颜色代码。

| 颜色代码 | 颜色 | | --- | --- | | 30 | 黑色 | | 31 | 红色 | | 32 | 绿色 | | 33 | 黄色 | | 34 | 蓝色 | | 35 | 紫色 | | 36 | 青色 | | 37 | 白色 |

要将文本输出为某个颜色,请将\033之后的数字设置为所需颜色的代码。

例如,将文本输出为绿色:

System.out.println("\033[32mHello, Java!\033[0m");
样式代码

下表列出了 ANSI 转义序列中可用的样式代码。

| 样式代码 | 样式 | | --- | --- | | 0 | 重置 | | 1 | 粗体 | | 2 | 模糊 | | 3 | 斜体 | | 4 | 下划线 | | 5 | 闪烁 | | 6 | 闪烁(快速) | | 7 | 反转 | | 8 | 隐藏 |

要将文本输出为某个样式,请将\033之后的数字设置为所需样式的代码。

例如,将文本输出为粗体:

System.out.println("\033[1mHello, Java!\033[0m");
组合代码

我们可以组合多个颜色和样式来创建复杂的输出。

例如,将文本输出为黄色的、粗体和下划线:

System.out.println("\033[33;1;4mHello, Java!\033[0m");
封装方法

为了方便,我们可以将输出颜色的代码封装到一个方法中。

public static void printWithColor(String text, int colorCode) {
    System.out.println("\033[" + colorCode + "m" + text + "\033[0m");
}

调用时,只需要传入要输出的文本和所需颜色的代码即可:

printWithColor("Hello, Java!", 33);
结论

在编写终端程序时,使用 ANSI 转义序列可以很方便地为终端输出添加颜色和样式。在 Java 中,我们可以使用 System.out.print() 或 System.out.println() 输出文本,并使用转义字符 \033 将输出设置为所需颜色和样式。