这些Java教程是针对JDK 8编写的。本页面中描述的示例和实践不利用后续版本中引入的改进,并可能使用已不再可用的技术。
请参阅Java语言变化了解Java SE 9及后续版本中更新的语言特性的摘要。
请参阅JDK发行说明了解所有JDK版本的新功能、增强功能和已删除或弃用选项的信息。
while语句,但它在循环的底部评估表达式。for语句编写一个无限循环?
答案:
for ( ; ; ) {
}
while语句编写一个无限循环?
答案:
while (true) {
}
if (aNumber >= 0)
if (aNumber == 0)
System.out.println("第一个字符串");
else
System.out.println("第二个字符串");
System.out.println("第三个字符串");
aNumber是3,你认为代码会输出什么?
解答:
第二个字符串 第三个字符串
aNumber设为3。程序的输出是什么?是否和你预测的一样?解释为什么输出是这样的。换句话说,代码片段的控制流是什么?
解答: NestedIf
第二个字符串 第三个字符串
if语句。第二个if语句的条件不满足,因为3不等于0。因此,执行else子句(因为它附属在第二个if语句上)。因此,显示第二个字符串。最后一个println完全不属于任何if语句,所以它总是被执行,因此显示第三个字符串。解答:
if (aNumber >= 0)
if (aNumber == 0)
System.out.println("第一个字符串");
else
System.out.println("第二个字符串");
System.out.println("第三个字符串");
{和}进一步澄清代码,减少未来维护代码时出现错误的可能性。
解答:
if (aNumber >= 0) {
if (aNumber == 0) {
System.out.println("第一个字符串");
} else {
System.out.println("第二个字符串");
}
}
System.out.println("第三个字符串");