java.lang.ArrayIndexOutOfBoundsException:对于使用命令提示符工作的程序,Eclipse中存在0错误?
是的,所以我设法让Eclipse工作(我们需要在考试中使用它)。我正在导入和运行我用gedit编写的一些程序,并用命令提示符运行(这很有效),但它们在Eclipse中似乎不起作用。java.lang.ArrayIndexOutOfBoundsException:对于使用命令提示符工作的程序,Eclipse中存在0错误?,java,eclipse,indexoutofboundsexception,Java,Eclipse,Indexoutofboundsexception,是的,所以我设法让Eclipse工作(我们需要在考试中使用它)。我正在导入和运行我用gedit编写的一些程序,并用命令提示符运行(这很有效),但它们在Eclipse中似乎不起作用。 我的Hello World程序有,但我的其他程序似乎抛出了关于args的错误 package week1; public class PersonalGreeting { public static void main(String[] args) { String first_name
我的Hello World程序有,但我的其他程序似乎抛出了关于args的错误
package week1;
public class PersonalGreeting {
public static void main(String[] args) {
String first_name = args[0];
String last_name = args[1];
System.out.println("Hello " + first_name + " " + last_name);
}
}
错误:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at week1.PersonalGreeting.main(PersonalGreeting.java:6)
有没有办法解决这个问题,是什么原因造成的?为什么它应该在命令提示符下工作而不是在Eclipse中工作?看起来程序没有收到预期的命令行参数。查看Eclipse中的执行配置,以便将强制参数传递给您编写的任何命令行程序。程序似乎没有收到预期的命令行参数。查看一下Eclipse中的执行配置,以便将强制参数传递给您编写的任何命令行程序。我肯定会传递一些参数给它。您可以通过eclipse运行配置来实现这一点。查看运行配置下的运行菜单。切换到Arguments选项卡,并在再次运行之前提供一些程序参数 编辑:
顺便说一下,当您要求eclipse运行您的程序而不提供任何进一步的详细信息时,它会为该程序创建一个默认的运行配置,然后该配置会出现在运行配置列表中。我会考虑发布Run命令并期望输出中的一些错误作为一个常见的使用Eclipse的使用模式——只需简单地获得这样创建的运行配置,然后去编辑它,让它有它所需要的任何快乐,只要程序参数、环境变量等等。 < P>我一定会传递它的一些参数。您可以通过eclipse运行配置来实现这一点。查看运行配置下的运行菜单。切换到Arguments选项卡,并在再次运行之前提供一些程序参数 编辑:
顺便说一下,当您要求eclipse运行您的程序而不提供任何进一步的详细信息时,它会为该程序创建一个默认的运行配置,然后该配置会出现在运行配置列表中。我会考虑发布Run命令并期望输出中的一些错误,这是一个常见的使用Eclipse的使用模式——只需简单地获得这样创建的运行配置,然后去编辑它,使它有任何它需要的快乐,只要程序参数,环境变量,等等。Eclipse不像命令行那样传递参数
您需要转到运行配置(右键单击项目->运行方式->运行配置并选择您的应用程序)。您可以单击“参数”并在“程序参数”字段中键入参数,然后单击“运行”。Eclipse不像命令行那样传递参数
您需要转到运行配置(右键单击项目->运行方式->运行配置并选择您的应用程序)。您可以单击“参数”并在“程序参数”字段中键入参数,然后单击“运行”。这是因为您没有提供任何方法参数。 当您从控制台运行程序时,必须输入firstname和lastname,这在eclipse中是缺失的,因此IndexOutOfBoundsException 要解决此问题,请执行以下操作: 右键单击您的项目。 选择RunAs。 转到运行配置。
在arguments选项卡中输入名字和姓氏作为程序参数。这是因为您没有提供任何方法参数。
public class PersonalGreeting {
public static void main(String[] args) {
String first_name = "";
String last_name = "";
if (args.length > 0){
first_name = args[0];
if (args.length > 1) last_name = args[1];
}else{
first_name = "parameters";
last_name = "are missing";
}
System.out.println("Hello " + first_name + " " + last_name);
}
}
当您从控制台运行程序时,必须输入firstname和lastname,这在eclipse中是缺失的,因此IndexOutOfBoundsException
要解决此问题,请执行以下操作:
右键单击您的项目。
选择RunAs。
转到运行配置。
在arguments选项卡中输入名字和姓氏作为程序参数
public class PersonalGreeting {
public static void main(String[] args) {
String first_name = "";
String last_name = "";
if (args.length > 0){
first_name = args[0];
if (args.length > 1) last_name = args[1];
}else{
first_name = "parameters";
last_name = "are missing";
}
System.out.println("Hello " + first_name + " " + last_name);
}
}
试图捕捉错误
尝试捕捉错误您是否通过Eclipse运行配置传递任何参数?希望这能教会您以这样一种方式编写程序,即它们永远不会因为缺少或无效的命令行参数而死亡。具体来说,访问未知大小的数组只会带来麻烦。您是否通过Eclipse运行配置传递任何参数?希望这能教会您以这样一种方式编写程序:它们永远不会因为缺少或无效的命令行参数而死亡。具体来说,访问未知大小的数组只会带来麻烦。这就是我要寻找的!我必须承认,这是相当令人沮丧的,虽然。。。我已经习惯了在编写命令行时在命令行中键入各种不同的输入,以查看它是否有效以及需要更改的内容。这似乎是一个相当累人的过程!这就是我要找的!我必须承认,这是相当令人沮丧的,虽然。。。我已经习惯了在编写命令行时在命令行中键入各种不同的输入,以查看它是否有效以及需要更改的内容。这似乎是一个相当累人的过程!