如何在Eclipse中运行简单的Java程序?
你可以从问题本身中理解,我是Java的新手。 我接受了一个练习来编写一个Java程序,它接收一个字符,打印它并在Unicode表中输入下一个字符。
现在,我有这个练习的解决方案:
public static void main(String[] args){ char c = args[0].charAt(0); char c1 = (char)(c + 1); System.out.println(c + "\t" + c1); }
我理解这段代码的基本思想,但我试图在Eclipse中运行这段代码我遇到了一个恼人的错误:
线程“main”中的exceptionjava.lang.ArrayIndexOutOfBoundsException:0在MainClass.main(MainClass.java:9)
注意:我还没有运行实际接收某些东西作为参数的Java程序,所以我猜这是一个愚蠢的初学者的错误……这是我试图在Eclipse中编译的完整代码:
public class MainClass { /** * @param args */ public static void main(String[] args){ char c = args[0].charAt(0); char c1 = (char)(c + 1); System.out.println(c + "\t" + c1); } }
提前致谢
- 从菜单中选择“运行 – >运行配置”。
- 在左侧列表中搜索您的项目并选择它。
- 选择右侧的“参数”选项卡。
- 在“程序参数”中编写要传递给程序的参数。
- 点击“运行”
右键单击Eclipse中项目浏览器中的java文件。 然后运行方式>运行配置
然后你会得到一个窗口。 喜欢-
单击Arguments选项卡,然后在那里写一些文本,可能是一个字符。
然后单击“应用”按钮和“运行”按钮。
Eclipse中的默认运行配置运行没有任何参数的Java程序,因此ArrayIndexOutOfBoundsException
。 你的代码试图获得args
数组的第一个元素,当没有任何!
您可以编辑运行配置以提供运行程序的参数。 然后它不应该抛出这个exception。
但是,一个好的做法是在访问数组之前检查数组的大小,当数组从代码外部作为参数出现时更是如此。
这是一个很好的问题,有一些非常好的答案。 我想补充一些关于如何调试自己的程序的指针。 调试与编写代码同样重要(如果不是更重要)。
首先,Eclipse有一些很棒的调试function。 您可以使用此调试器来查找代码中的问题。 我建议你学习如何使用它。 特别是,您可以设置变量监视,以查看在执行代码时它们具有的值。
或者,您可以添加对System.out.println()
调用以打印出任何变量的值。 例如,在代码开头添加以下行可能有助于缩小问题范围:
System.out.println(args[0]);
如果没有给出命令行参数,这也会产生ArrayIndexOutOfBoundsException
。 然后你可以做类似的事情
System.out.println(args.length);
哪个会打印0
。 然后,这将为您提供问题所在的线索。
当然,即使你达到这一点,你仍然可能不知道如何解决问题。 这就是像StackOverflow这样的网站派上用场的地方。
祝你的Java经验好运。 请在需要更多帮助时回来。
如果您的运行配置已就位(如上面的答案中所示):
运行类的快捷方式是:
Ctrl + F11