-1

我正在尝试使用一种方法创建一个类,该方法可以打印任意两个给定整数之间的所有整数。这就是我现在所拥有的——

public class IntList {
public static void main(String[] args) {
int start = Integer.parseInt(args[0]);
int stop = Integer.parseInt(args[1]);
for (int i = start + 1; i < stop; i++) {
System.out.print(i);
}
}

}

这不会编译,我收到 2 个错误,说“解析时到达文件末尾”,第 4 行和第 5 行各一次。

4

4 回答 4

4

错误main()的方法声明。您必须传递一个数组作为此函数的唯一参数。

然后要么将你的startstop变量声明为本地变量,然后在 main 方法本身内完成这项工作,要么创建一个从该main()方法调用的新函数。

无需更多解释,这是 Java 基础知识。您应该阅读 Java 课程。

于 2013-06-02T19:24:54.153 回答
3

这段代码有两个问题

  • 主要方法没有正确的签名

让主要喜欢

public static void main(String ar[]){
}

并创建另一个静态方法来接受两个 int 变量

  • 重复的局部变量声明

消除

int i;

您已经声明并初始化为 for 循环的一部分

它会给你duplicate local variable错误

于 2013-06-02T19:22:36.417 回答
2

您的main方法声明不正确。Java 应用程序main方法中的参数列表必须是String数组。删除变量的重复声明后,从数组的前 2 个值中读取start和值:stopStringi

public static void main(String[] args) {

    int start = Integer.parseInt(args[0]);
    int stop = Integer.parseInt(args[1]);
    for (int i = start + 1; i < stop; i++) {
        System.out.print(i);
    }
}

不要忘记将start&stop值传递给应用程序

java IntList 1 10
于 2013-06-02T19:24:18.527 回答
0

你需要public static void main(String[])在你的班级中才能执行它。

import java.util.Random;
public class IntList {
    public static void main(int start, int stop){
        for (int i = start + 1; i < stop; i++) {
        System.out.print(i);
        }
    }
    public static void main(String args[]){
        main(random.nextInt(20),random.nextInt(100));
    }
}
于 2013-06-02T19:29:20.583 回答