我在这里遇到此错误: 线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:索引0的长度为0超出范围
@override
void initState() {
Future.delayed(const Duration(milliseconds: 16), () {
// Anything that use your key will go here.
});
super.initState();
}
答案 0 :(得分:0)
您需要在cmd上以Java MyProgram abc xyz的身份运行代码,然后args将包含[“ abc”,“ xyz”]。也许您现在不这样做,因此会收到错误消息。
答案 1 :(得分:0)
您需要像这样提供命令行参数:
CourseDetailDeleteView.update
这些参数传递给数组serializer.is_valid(raise_exception=True)
,该数组将包含java MyClass k foo bar
因此,args[]
将是{"k", "foo", "bar"}
,而args.length
将是3
答案 2 :(得分:0)
如果通过IDE执行并且未设置参数,或者在通过cmd
运行时未传递命令行参数,则会收到此错误。
但是对于此程序,即使您传递参数,它也可能在无限循环中运行,因为条件始终为真。
答案 3 :(得分:0)
您正在执行不带参数的java类。在那种情况下,args [0]现在确实存在,并因此出现带有错误的异常消息。
您可以通过以下形式修改if:
if(args[0].equals("k") && args.length > 0 )
所以您不会在消息中出现异常
索引0超出长度0的范围
您的程序产生的输出没有错误,当运行带有参数“ k”的程序时,将产生打印k的无限外观。为此,您需要运行命令java printKjavaFile k,或使用此参数从IDE启动它。