Tag: 转到

Java中的Goto语句

我在Eclipse中执行了以下代码,但其中的GOTO语句无效。 我该如何使用它? 如何在不使用goto语句的情况下使用Break和Continue语句重写上面的代码? import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** * */ /** * @author Home * */ public class student { /** * @param args */ String average(float sub1,float sub2,float sub3) { float average = (sub1+sub2+sub3)/3; if( average > 50) return “PASS”; else return “FAIL”; } String addName(String name) { return name; } public […]

转到Java字节码

所以有一天,当我查看维基百科页面上的Java字节码时,我遇到了这个例子: 请考虑以下Java代码: outer: for (int i = 2; i < 1000; i++) { for (int j = 2; j < i; j++) { if (i % j == 0) continue outer; } System.out.println (i); } 假设将以上内容放在方法中,Java编译器可能会将上面的Java代码转换为字节代码,如下所示: 0: iconst_2 1: istore_1 2: iload_1 3: sipush 1000 6: if_icmpge 44 9: iconst_2 10: istore_2 11: iload_2 12: […]

如何正确使用goto语句

我正在上高中AP计算机科学课。 我决定把一个goto语句放到我们的一个实验室里来玩,但是我得到了这个错误。 Exception in thread “main” java.lang.Error: Unresolved compilation problems: Syntax error on token “goto”, assert expected restart cannot be resolved to a variable at Chapter_3.Lab03_Chapter3.Factorial.main(Factorial.java:28) 我在Stackoverflow上转到了一个goto问题,以了解如何正确地完成它,并且我完全按照其中一个答案进行了演示。 我真的不明白为什么编译器想要一个assert语句(至少这是我认为它想要的),我也不知道如何使用assert 。 它似乎想重启部分goto restart; 作为变量,但重新启动只是一个标签,将程序拉回到第10行,以便用户可以输入有效的int 。 如果它想重新启动变量,我该怎么做? import java.util.*; public class Factorial { public static void main(String[] args) { int x = 1; int factValue = 1; Scanner […]