我打印args.length
,它说5。
我也通过for(int i = 0; i < args.length;i++)
打印参数,我看到4个参数。
这里有什么问题?
下面是代码:
System.out.println(args.length);
for(int i = 0; i < args.length; i++){
System.out.println(args[i]);
}
我的论点是: 〜/ Desktop / Master_Bioinformatik / Data_Mining_in Bioinformatics / Project / stockori / joint.csv 2 3.2 euclidean
编辑:好吧我监督了一些事情,实际上输出是:5线程“main”中的异常 〜/桌面/ Master_Bioinformatik / Data_Mining_in 生物信息学/项目/ stockori / joint.csv 2 3.2 欧氏
该异常短语以红色显示。我认为这是一些图形错误。但它再次出现。那是为什么?
答案 0 :(得分:3)
5个参数(你的dir名称中有空格):
〜/桌面/ Master_Bioinformatik / Data_Mining_in
生物信息学/项目/ stockori / joint.csv
2
3.2
欧氏
答案 1 :(得分:2)
也许你们其中一个参数是一个空字符串(“”)。
如果您使用的是System.out.println(),则可以查看打印的行数。
修改:
如果你看到正确的行数打印,你可能会在没有意识到的情况下修改args。你有没有试过它final
?
使用argc上的手表逐步执行代码也很有用。