public static void main(String[] args){ System.out.println(" //字符串从这一行直到下一行
");
}
都知道是编译错误,但有谁可以解释一下?
");
}
都知道是编译错误,但有谁可以解释一下?
解决方案 »
- Java版走迷宫
- 错误原因:java.sql.SQLException:Already closed
- 怎样使TLabelField中显示的字符为***
- 为什么程序生成.exe之后,程序里用的图片显示问题!急!
- 除去重复的的值?求好方法!
- 如何使用WebLogic的LDAP服务,最好有相关文档和教材,拜谢
- 加载图片的问题
- 用无状态sessionBean访问数据库能否保证事务??
- 如何控制Corba客户端的连接?(比如在服务器上可以关掉客户端的连接)(发言就给分)
- DatagramChannel 的receive方法能同时接收多个客户端发来的数据吗
- java播放音乐代码,求教高手啊,这个什么问题呢
- 关于java的正则表达式问题
这写法是正常的
System.out.println("
");
把字符串从一行变成两行,就编译不过。我知道正确的写法,只是想问问这个是错在哪里的。
呵呵,这个就是编译器的事咯,它认为这种是非法的,就像你定义的变量为关键字,编译也通不过,不一样到底?另外,换行一般都这样吧
System.out.println("" +
"" +
"" +
"");
Java继承了C/C++松散的编程风格(PS:虽然几乎所有的Java教材上都不建议这种风格),可以将一个具有语义的语句分成多行书写(同样的,也允许将多个语句写在一行)。
在C/C++编译体系里,换行符是作为编译元素的分隔符,它与允许写在变量与运算符之间的空格是一样的。
int a=1+2;
和
int
a
=
1
+
2
;
是一样的。
LZ的例子中,编译器会将换行符两边的双引号都分析为编译元素(注释会在预编译时过滤掉),而这两个元素写法都是错误的,因此编译错误。LZ这题确实有点钻牛角尖,但在下不太赞成3L的意见。这种题目看似没什么用,但多了解些编程时容易出错的地方可以防止自己出同样的错误,也可以提高维护自己代码和修改同事代码的能力。(只是有些地方了解下就好,不用太过深究)
System.out.println(" //字符串从这一行直到下一行"+
"");
");注释那个只是我自己加上去而已。
问题就是把字符串分割成2行表示。
不要问为什么有问题. 更要把精力放到怎么写好的代码上来.
这个问题是给编译器出的, 写程序真不需要care about it.
应该是java编译规则规定引号包起来的内容只能在同意行里吧,
要是你需要写成两行的话就要这样:
"第一行"
+"第二行"
System.out.println(""
+"");这样也是可以的。就好比1+1为什么=2,这个是数学天才干的事。你要是在理解不了,就是程序不像你的大脑,程序不是万能的,要完成你那一种解析,估计要多费很多行代码,甚至可能会影响其他的实现。个人也觉得没啥必要,这就是规范,1+1在理论上就等于2.