我目前正在为Java的子集开发解析器,我很想知道;
答案 0 :(得分:1)
是的,Java源代码中的所有换行符都可以替换为空格或被删除。但是,不要删除\n
(反斜杠n),因为这是字符串文字中的换行符。
并且,是的换行符与空格相同,只要你在String文字之外。如果您在String文字中,并且您将删除换行符,那么您将会遇到语法错误。因为Java中不允许在字符串文字中包含换行符。所以,这是错误的:
String str = "first line
same line";
因此,如果您想要使用解析器检测语法错误,则取决于事实。您是否只解析有效代码?这是你应该问自己的问题。
答案 1 :(得分:0)
我能想到的唯一情况就是String-literals。
如果两个"
之间存在换行符,则会导致语法错误,而空格则不会。
答案 2 :(得分:0)
你必须注意它可能来自字符串\ n,当然如果你想要进行替换,你必须增加+1行,因为你将在项目的下一阶段需要它。