Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中创建ASCII艺术_Java_Eclipse_Macos - Fatal编程技术网

在Java中创建ASCII艺术

在Java中创建ASCII艺术,java,eclipse,macos,Java,Eclipse,Macos,在介绍Java类时,我假设创建一个带ASCII的姜饼人。这是第一个作业,所以到目前为止,这个类只涉及println stations。我正在OSX 64位上为Java开发人员使用EclipseIDE 这就是我现在拥有的: import acm.program.*; public class ASCIIArtProgram extends ConsoleProgram { public void run() { println(" _ "); p

在介绍Java类时,我假设创建一个带ASCII的姜饼人。这是第一个作业,所以到目前为止,这个类只涉及println stations。我正在OSX 64位上为Java开发人员使用EclipseIDE

这就是我现在拥有的:

import acm.program.*;

public class ASCIIArtProgram extends ConsoleProgram {

    public void run() {
        println("   _   ");
        println(" _(")_ ");
        println("(_ . _)");
        println(" / : \ ");
        println("(_/ \_)");
    }

}
我在第7行出错的原因。它不断地将分号变为冒号

错误:

  • 令牌“\u1”上的语法错误,AssignmentOperator无效

  • 字符串文字未被双引号正确关闭

假定程序输出以下内容:

   _
 _(")_
(_ . _)
 / : \
(_/ \_)
我不知道我做错了什么。

你在哪里

println(" _(")_ ");
            ^
字符串中的引号将终止该字符串。这就是引用字符串的工作方式。 如果要在字符串中打印引号,则需要

println(" _(\")_ ");
您还将发现,您还需要将打印的
\
替换为
\
,因为
\
本身具有“转义下一个字符”的特殊含义

i、 e


你需要引用后面的斜杠

在字符串中使用
\
而不是
\

因此:


当您想在字符串文字中使用字符时,必须转义/引用的所有字符的列表请仔细查看

println(" _(")_ ");
        ^---^---^
打开、关闭并打开引号,
“\uquot(
是一个适当的
字符串,
)\uquot
对于编译器来说是垃圾,因为它不能解释任何有效的Java命令

您需要转义第二个引号,例如

println(" _(\")_ ");
这将使Java忽略它,并将它(字面上)视为
字符串的一部分

\
也有特殊的含义,正如您所看到的,您还需要逃避它

println(" / : \\ ");
println("(_/ \\_)");

您必须转义要打印的特殊字符,因为编译器不知道您的
是否意味着
print”
启动/停止字符串
。这同样适用于
\

要转义字符,只需在其前面写一个
\
。因此:

  • 变成
    \”
  • \
    变为
    \

您可以从Oracle中阅读有关字符和转义的更多信息。

您需要阅读有关Java基础知识的更多信息。请参阅“转义字符”。请在这里查看此页面@MeenaO-签出此问答。
println(" _(\")_ ");
println(" / : \\ ");
println("(_/ \\_)");