0

当我在 PuTTY 中而不是在 Eclipse 中运行我的程序时出现错误。我在网上环顾四周,试图找到我的问题的答案,但也没能找到。

错误:

dataSummary.java.227: inconvertible types
found:    java.lang.Object
required:  int
     int contractIDDisplay = (int) int intr.next();
                                                ^
1 error

这是代码:

    Iterator itr = set.iterator();
            while (itr.hasNext())
            { //while
                int contractIDDisplay = (int) itr.next();
                if (contractIDDisplay == 1)
                {
                    System.out.printf("%d, %d, %d, %d",contractIDDisplay, monthCounter1, firstDate1, lastDate1);
                    file.format(contractIDDisplay + ", " + monthCounter1 + ", " + firstDate1 + ", " + lastDate1 + ", ");

                }

在这些行之前和之后有更多代码,但是我认为这些行并不重要。如果他们是,请告诉我。“集合”是一个集合。

为什么 Eclipse 能够运行我的代码而 PuTTY 不能?如果无法修复,有没有办法解决这个问题?

4

2 回答 2

1

当您从命令行运行 Java 时,您可能会调用与运行 eclipse 的版本不同的 Java 版本。一个系统安装多个 java 的情况并不少见——随着时间的推移,人们会升级、打补丁等,最终会并行安装。关键问题是当您从命令行执行 java 时,您的 PATH 中是哪个版本的 java?

找出答案的一种方法是从命令行运行“java --version”,看看它是否符合您的期望。

然后,您可以将其与 eclipse.ini 文件中引用的版本进行比较。

于 2013-06-18T12:51:05.090 回答
0

好吧,我不知道您为什么要谈论 PUTTY,但在 JAVAint中不是对象Integer

Eclipse(我认为它是编译器)可能会自动将 int 转换为 Integer,而其他编译器不会。

尝试使用整数而不是 int。然后你可以调用intValue()如果对象不是NULL

如果您使用 Sun,您可能也会对此链接感兴趣:http ://geek.starbean.net/?p=160

于 2013-06-18T12:25:13.960 回答