我正在开发一款基于文本的游戏,我想让游戏的标题更吸引人.我try 使用文本到ASCII转换器来制作一个好看的标题,然后复制并粘贴到我的代码中输出,但没有成功.

以下是我试图做的:

System.out.println("
██████╗ ██╗   ██╗███╗   ██╗ ██████╗ ███████╗ ██████╗ ███╗   ██╗     ██████╗ ███████╗                            
██╔══██╗██║   ██║████╗  ██║██╔════╝ ██╔════╝██╔═══██╗████╗  ██║    ██╔═══██╗██╔════╝                            
██║  ██║██║   ██║██╔██╗ ██║██║  ███╗█████╗  ██║   ██║██╔██╗ ██║    ██║   ██║█████╗                              
██║  ██║██║   ██║██║╚██╗██║██║   ██║██╔══╝  ██║   ██║██║╚██╗██║    ██║   ██║██╔══╝                              
██████╔╝╚██████╔╝██║ ╚████║╚██████╔╝███████╗╚██████╔╝██║ ╚████║    ╚██████╔╝██║                                 
╚═════╝  ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝  ╚═══╝     ╚═════╝ ╚═╝                                 
                                                                                                                
    ████████╗██╗  ██╗███████╗    ███████╗ ██████╗ ██████╗  ██████╗  ██████╗ ████████╗████████╗███████╗███╗   ██╗
    ╚══██╔══╝██║  ██║██╔════╝    ██╔════╝██╔═══██╗██╔══██╗██╔════╝ ██╔═══██╗╚══██╔══╝╚══██╔══╝██╔════╝████╗  ██║
       ██║   ███████║█████╗      █████╗  ██║   ██║██████╔╝██║  ███╗██║   ██║   ██║      ██║   █████╗  ██╔██╗ ██║
       ██║   ██╔══██║██╔══╝      ██╔══╝  ██║   ██║██╔══██╗██║   ██║██║   ██║   ██║      ██║   ██╔══╝  ██║╚██╗██║
       ██║   ██║  ██║███████╗    ██║     ╚██████╔╝██║  ██║╚██████╔╝╚██████╔╝   ██║      ██║   ███████╗██║ ╚████║
       ╚═╝   ╚═╝  ╚═╝╚══════╝    ╚═╝      ╚═════╝ ╚═╝  ╚═╝ ╚═════╝  ╚═════╝    ╚═╝      ╚═╝   ╚══════╝╚═╝  ╚═══╝");

但它似乎不起作用.我知道它可以在JavaScript中工作,但我想知道它是否也可以在Java中工作.

推荐答案

字符串常量

String literal-是由零个或多个字符组成的字符串,用双引号"myText"括起来.

在Java中创建多行字符串文字是不可能的,正如您所try 的那样.根据语言规范,这是一个编译时错误,行终止出现在字符串中.

String invalidLiteral = "line1
                         line2
                         ..."; // will cause a compilation error

要编译这样的字符串文字,可以用新行字符\n替换行终止.

String validString = "line1\nline2\nline3";

生成的字符串可能会变得很长,为了使其可读,可以将字符串拆分为多个块,并用加号+连接,在每个块后面附加一个新行字符\n.

String validConcatinatedString = "line1\n" +
                                 "line2\n" +
                                 "line3";

虽然它会起作用,但可能会很乏味.

文本块

使用Java15,您可以使用text blocks创建多行字符串.

为了创建文本块,需要将目标多行文本括在三个双引号字符中.

String myASCIIArt = """ // no text after the opening delimiter
              Your amazing 
                  ASCII art 
                       here""";

Note开头分隔符"""应该是immediately,后面跟着line termination,文本块的实际主体始终从下一行开始.

Java相关问答推荐

我可以从Java模块中排除maven资源文件夹吗?

转换为Biggram

Mat. n_Delete()和Mat. n_release的区别

我无法获取我的Java Spring应用程序的Logback跟踪日志(log)输出

如何确定springboot在将json字段转换为Dto时如何处理它?

在Java中,如何按一个属性升序,然后按另一个属性降序对对象列表进行排序?

在Java中,在单个逻辑行中连接列表和单个元素的正确方法是什么?

带错误BER验证的itext8签名返回pdf

Javadoc在方法摘要中省略方法

Log4j与jdk21兼容吗?

如何在Cosmos DB(Java SDK)中增加默认响应大小

将JSON字符串转换为Java类

如何在透视表中添加对计数列的筛选?

对角线填充二维数组

如何在ApacheHttpClient 5中为单个请求设置代理?

在权限列表中找不到我的应用程序

Cucumber java-maven-示例表-未定义一步

";home/runner/work/中没有文件...匹配到[**/pom.xml];Maven项目的构建过程中出现错误

java 11上出现DateTimeParseException,但java 8上没有

Xml Reader 将 BMP 外部的字符解析为代理项对,这会导致无效的 xml