我是 Java 的新手。 我正在编写一个程序,该程序陷入了无限循环,该循环显示在控制台中,但不显示在小程序中。这是一个日历,需要将月份和日期从 10 月 31 日更改为 11 月 1 日,并将其显示在某个位置。我很确定 if 语句是错误的,但我在我的书中找不到任何帮助:( 这是代码:
int date = 28;
String currentMonth = "October";
String nextMonth = "November";
String dateNumber = "28th October";
for (date = 28; date <= 32; date++)
{
if (date == 32);
{
currentMonth = nextMonth;
date = 1;
}
switch (date)
{
case 28: dateNumber = "28th October"; break;
case 29: dateNumber = "29th October"; break;
case 30: dateNumber = "30th October"; break;
case 31: dateNumber = "31st October"; break;
case 32: dateNumber = "1st November"; break;
default: println (dateNumber); break;
}
GLabel label = new GLabel(dateNumber);
label.setFont ("Ariel-13");
label.setColor(Color.BLUE);
add (label, 50, 001 + (100*date));
}
在控制台中,它无限重复 10 月 28 日。在 Applet 中,它仅在 GLabel
的第一个位置显示“28th October”(它不执行 + (100*date)
)。
如果有人能解释发生了什么并提出解决方法,我将不胜感激!
最佳答案
您将分号 ;
放在 if
语句的末尾。
if (date == 32) // Remove ;
{
由于if
末尾有分号,不会进入if
block ,因此您的日期
不会重新启动1
。
关于java - 控制台中出现奇怪的无限循环,但 Applet 中却没有 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20372020/