为什么这个语句在Java中有效?

时间:2015-09-30 05:41:18

标签: java

我偶然在NetBeans上写了这样的东西:

System.out.println(("Apples") System.out.println("Oranges"));

它最初显示我没有错误,编译后输出为:

Apples
Oranges

运行后,它开始向我显示错误,但它仍然编译并给出相同的输出。

另外,System.out.println((grade/=3) + "%")是一个有效的陈述吗?

编辑:由于人们说它没有编译,所以这是一个截图: http://s1.postimg.org/m1ezmm3vz/Untitled.png 它正在为我编译:/

2 个答案:

答案 0 :(得分:1)

第二个陈述有效:

System.out.println((grade/=3) + "%");

此处首先计算(grade/=3),然后附加%

但是

System.out.println(("Apples") System.out.println("Oranges")); 

是无效的声明。对于这种情况,编译器会生成编译错误,如:

error: ')' expected
error: illegal start of expression
error: ';' expected

答案 1 :(得分:0)

第一个语句不在Eclipse中编译或执行,也不使用命令行选项。 Netbeans编译器的这个主题已经回答了类似的查询

Which java compiler is used by NetBeans?