什么是行终结者以及它如何适用于评论?

时间:2014-05-13 18:13:10

标签: java comments jls

我正在阅读Java语言规范(se8),我遇到了这个......

Lines are terminated by the ASCII characters CR, or LF, or CR LF. The two characters CR immediately followed by LF are counted as one line terminator, not two.

A line terminator specifies the termination of the // form of a comment (§3.7).

http://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.4

我不明白它的含义,也没有任何关于它是如何工作的例子。基于背景,我猜测一个行终止符将是评论的结尾,所以对于

/*
  *
  */

行终结符为*/(如果我错了,请纠正我)

我不明白行终结符将如何应用于//条评论。

编辑:所以我想我不会发疯,\n \r被认为是行终结者,这是我的第一次猜测。真正让我感到困惑的是,为什么他们在谈论这个时会引用评论,通常(从我看过的),他们被用于字符串。

2 个答案:

答案 0 :(得分:2)

行终止符是一个实际的ascii字符,对人类不可见但对计算机很重要。行终止符字符告诉计算机从哪里开始新行。我们告诉电脑打印"打印"当我们想要新线时终结者。 例如,在java中,而不是做

System.out.println("Hello World");

你可以做到

System.out.print("Hello World\n");

" \ n"代表行终止符或"新行"。

答案 1 :(得分:1)

阅读本文:http://en.wikipedia.org/wiki/Newline

它是ASCII编码的字符序列,表示一行的结束,具体取决于您的平台。

例如,ASCII字符CR(回车),LF(换行)或两者CRLF(回车符,紧接着换行符)用于表示文本行的结尾。 在大多数UNIX平台上,只使用一个CR字符,而在基于DOS的平台上,通常使用序列CRLF来表示行尾,因此,该序列通常被解释为"一个终结符&#34 ;因为他们必须按照这个顺序。

解决具体问题(根据评论反馈): 从您作为用户的角度来看,这与评论无关。它对Java源代码的解析器很重要,因为当读取一行时,它需要相应的行终止符。您可以通过按" Enter"来有效地完成此操作。插入一个新行。文件,文本编辑器和平台的编码都需要与特定字符一致;实际上,当您添加新行时,会插入CR,LF或CRLF。