Java 输出
你想让屏幕显示另一个词。文件仍然是 Mint.java,写屏幕的命令仍然是你已经认识的那一行。上一页引号里是 mint,所以屏幕是 mint。这一页你把另一个词放进同一对引号,然后加上第二条写屏幕的命令,再看一条写屏幕的命令不结束这一行时,屏幕显示什么。你不是在重新安装 Java。你不是在找哪一行写出屏幕,也不是在加注释。你已经知道写屏幕的那一行,也已经知道注释不在屏幕上。新的工作是屏幕显示的那些字母。
引号之间的词
打开 Mint.java,找到这一行 System.out.println("mint");。屏幕显示引号之间的那个词。引号本身不是给屏幕的字母。它们标出这个词从哪里开始、到哪里结束。把这个词换掉。这一行的其余部分留在原地:System.out.println 留着,前引号留着,后引号留着,分号也留着。变的只有引号之间的字母。文件里原来是 mint 的地方,写成 leaf,全部小写。这一行现在是 System.out.println("leaf");。保存文件。文件名仍然是 Mint.java,因为 public class Mint 这一行仍然是文件的名字。这一页不给文件改名。
你保留的文件
把下面这段存成 Mint.java。这是这一页要保留的文件。它有一条写屏幕的命令,这条命令的引号之间是 leaf。这个文件里没有注释。还没有第二条写屏幕的命令。
public class Mint {
public static void main(String[] args) {
System.out.println("leaf");
}
}
从上面读下来,判断屏幕能从每一行收到什么。第一行是 public class Mint。这一行给文件起名字。它不写屏幕,前面几页上它也不写屏幕。下一行是 public static void main(String[] args)。Java 从这里开始。这些词没有一个是给屏幕的字母。main 里面有一条命令:System.out.println("leaf");。System.out.println 是写屏幕的命令。引号里是 leaf。分号结束这条命令。Java 执行这条命令,因为它在 main 里面,而且没有被放在 // 后面。屏幕显示 leaf。不显示引号,不显示分号,不显示 System 这个词,也不显示 main 这个词。
用和以前一样的办法运行。在放着这个 Mint.java 的文件夹里,输入 javac Mint.java。文件没有问题时,这条命令不写出任何一行。换掉引号之间的词,不会让 javac 写出一行,也不会让它失败。然后输入 java Mint。在 java 后面不要输入 .java。屏幕显示 leaf。一行。没有引号。没有分号。屏幕上没有 mint 这个词,因为 mint 已经不在引号之间。如果屏幕仍然显示 mint,引号之间就仍然是 mint。再次输入这两条命令之前,先看引号之间的字母。屏幕仍然是 mint 时,不要重新安装 Java。
屏幕照原样显示引号之间的字母。System.out.println("Leaf"); 写出 Leaf,L 是大写。System.out.println("leaf"); 写出 leaf,l 是小写。你保留的文件用的是小写 l,所以它的屏幕是 leaf,不是 Leaf。空格也是屏幕可以显示的一个字母,只要你把空格打在引号里面。System.out.println("leaf stem"); 写出一行:leaf stem,中间就是你放在两个词之间的那个空格。引号在这里也不显示。这是一条写屏幕的命令,所以是屏幕上的一行,哪怕里面有两个词。一对空引号不一样。System.out.println(""); 写出一行,这一行没有字母,然后结束这一行。屏幕看上去是空白的。命令执行了。引号里只是什么也没有。那一空白行不是你保留的文件。你保留的文件里是 leaf。
第二行
一条写屏幕的命令给出屏幕上的一行。屏幕上的第二行需要第二条写屏幕的命令。在 System.out.println("leaf"); 下面加上 System.out.println("stem");。每条命令有自己的引号和自己的分号。leaf 留在第一对引号里。stem 用小写,放进第二对。Java 执行第一条命令,结束这一行,然后执行第二条命令,也结束那一行。屏幕上的次序就是文件里的次序。你先写的那条命令,就是屏幕先显示的那一行。
这是第二个文件。你在看屏幕上的两行。你原来保留的文件有一条写屏幕的命令,屏幕是 leaf。这个文件有两条写屏幕的命令。想看这个屏幕时,把它存成 Mint.java;如果要这一页保留的那一份,再改回只有一条写屏幕的命令。
public class Mint {
public static void main(String[] args) {
System.out.println("leaf");
System.out.println("stem");
}
}
在同一个文件夹里输入 javac Mint.java。文件没有问题,所以 javac 不写出任何一行。然后输入 java Mint。屏幕显示 leaf,屏幕的下一行是 stem。两行。leaf 在上面,因为 System.out.println("leaf"); 是第一条写屏幕的命令。stem 在它下面,因为 System.out.println("stem"); 是第二条。两行上都没有引号。如果 stem 在上面、leaf 在下面,文件里这两条写屏幕的命令换了位置。屏幕不自己挑次序。把 stem 那条命令再放回 leaf 那条的下面,保存,再运行 java Mint。要得到第二行,不需要一种新的命令。需要第二个 System.out.println,它自己的词放在它自己的引号里。
print 不结束这一行
看你一直在用的那条写屏幕的命令的末尾。println 以字母 ln 结束。这两个字母就是这一行的结束。命令写出引号之间的字母,然后结束这一行,所以下一条写屏幕的命令从新的一行开始。print 是同一条写屏幕的命令,没有这两个字母。System.out.print("leaf"); 写出 leaf,不结束这一行。下一个 System.out.print 从那个词写完的地方接着写。命令不会替你放进一个空格。如果第一对引号里是 leaf,第二对里是 stem,两对里都没有空格,屏幕就在一行里显示 leafstem。
这是第三个文件。它不是你保留的文件。只保存到你看见单独一行 leafstem。两条命令都是 print,不是 println。两对引号里面都没有空格。
public class Mint {
public static void main(String[] args) {
System.out.print("leaf");
System.out.print("stem");
}
}
输入 javac Mint.java。文件没有问题,所以 javac 不写出任何一行。print 是一条真正的命令。用它不会让 javac 失败。然后输入 java Mint。屏幕显示 leafstem。一行。leaf 和 stem 之间没有空格。没有引号。leaf 仍然在前面,因为 System.out.print("leaf"); 是第一条命令,stem 紧挨着写在后面,因为 System.out.print("stem"); 不开始新的一行。如果你看见 leaf,然后在第二行看见 stem,文件里的命令就是 println,不是 print。字母 ln 还在命令上,所以每条命令都结束了自己的那一行。如果你要的屏幕是单独一个词 leafstem,就把两条命令上的字母 ln 去掉。
程序写出 leafstem,然后结束,并没有结束这一行。终端可能把自己的记号画在同一行上,画在 leafstem 后面。那个记号属于终端。它不是 Mint.java 里的词,也不属于你正在核对的那一行。核对引号之间的字母:leafstem。不要去对终端的记号。Windows 和 macOS 画的记号不一样,这一页不讲那些记号。程序的那一行在两边是一样的:leafstem,后面没有行的结束。
空格必须在引号里面
如果你要在同一行上有一个空格,这个空格必须是引号之间的字母之一。写屏幕的命令不会自己造出一个空格。把第一条命令改成 System.out.print("leaf ");,f 后面有一个空格,仍然在引号里面。第二条命令留着 System.out.print("stem");。Java 先写出 leaf,再写出你放在 f 后面的那个空格,再写出 stem,仍然不结束这一行。屏幕显示 leaf stem。你看见的空格,就是第一对引号里面的那个空格。你在引号外面、两条命令之间打的空格,只是文件里的一段空隙。它不是给屏幕的字母。你可以把两条命令分写在文件的两行上,或者在它们中间放一个空行,屏幕仍然是一行。文件里换到下一行,不是屏幕上的一行结束。只有结束这一行的命令,也就是 println,才会结束屏幕上的一行。print 绝不会这样做,不管文件里命令周围的空白怎么排。
看完 leafstem 和 leaf stem 之后,把文件改回你保留的那一份。你保留的文件里,写屏幕的那一行是 System.out.println("leaf");,没有第二条写屏幕的命令。这时 java Mint 再次显示 leaf,一行,而且这一行会结束。如果你误把一个 print 留在文件里,下一次运行不会结束那一行。要核对的是命令上的字母:println 结束这一行,print 不结束。
把引号删掉的那个错误
屏幕显示的词必须坐在引号之间。错误是把引号删掉,把词裸着留下:System.out.println(leaf);。没有引号的 leaf 不是给屏幕的词。Java 把它读成一个名字,而这个文件里没有这个名字。下一页讲名字。这一页停在引号上。第四个文件只保存到你看见 javac 不再保持安静,然后把引号放回去。这不是你保留的文件。
public class Mint {
public static void main(String[] args) {
System.out.println(leaf);
}
}
输入 javac Mint.java。这一次 javac 写出一条错误。它不再保持安静。文件有问题,因为 leaf 没有引号,在这个文件里还没有意义。你不需要那条错误的原话。有用的事实是 javac 写出了一行。javac 写出错误时,不要输入 java Mint。文件重新没有问题之前,没有新的屏幕可读。把引号放回去,让这一行再次成为 System.out.println("leaf");。保存。再输入一次 javac Mint.java。现在 javac 不写出任何一行。然后 java Mint 显示 leaf。整个修好的地方就是引号。不要重新安装 Java,也不要删掉写屏幕的那一行。一条删掉了引号的写屏幕命令,不是注释造成的空白屏幕。注释会让 javac 保持安静。这个错误会让 javac 写出一行。
你现在可以改引号之间的字母,从而改掉屏幕。System.out.println("leaf"); 写出 leaf 并结束这一行。第二个 System.out.println 写出下一行,次序就是你把命令写进文件的次序。System.out.print 写出它的字母,不结束这一行,所以后面的 print 接着写在同一行,空格只有在你把它放进引号里时才会被看见。如果 javac 对着一个裸词写出错误,就是缺了引号。下一页给一个词一个名字,这样写屏幕的命令可以用那个名字,而不只是用引号里的一个词。
屏幕就是引号之间的那个词
你保留的文件写出 leaf。一个 println 是一行。两条 println 命令是两行,先写的命令在前。两条 print 命令是一行,leafstem 里面没有空格,因为两对引号都没有放过空格。引号、分号和文件名都留在屏幕外面。
🧠 测试您的知识
测试您的知识
通过这个互动测验挑战自己,看看你对这个主题的理解程度如何
📝 说明
- 仔细阅读每个问题
- 为每个问题选择最佳答案
- 您可以随时重新参加测验
- 您的进度将显示在顶部