当程序没有带命令行参数是会出错,下面程序中的return有什么作用,如果去掉会显示java默认的错误信息。main方法是没有返回值的。但是这里的return怎样解释import java.io.File;
class FileTest { public FileTest () {
}
public static void main(String[] args) {
if(args.length==0){
System.out.println("运行该程序时,请输入以下格式的命令:");
System.out.println("java FileTest <文件名>");
return;
}
File file = new File(args[0]);
System.out.println("文件或目录是否存在:" + file.exists());
System.out.println("是文件吗:" + file.isFile());
System.out.println("是目录吗:" + file.isDirectory());
System.out.println("名称:" + file .getName());
System.out.println("路径: " + file.getPath());
System.out.println("绝对路径: " + file.getAbsolutePath());
System.out.println("最后修改时间:" + file.lastModified());
System.out.println("文件大小:" + file.length()+ " 字节");
}
}
class FileTest { public FileTest () {
}
public static void main(String[] args) {
if(args.length==0){
System.out.println("运行该程序时,请输入以下格式的命令:");
System.out.println("java FileTest <文件名>");
return;
}
File file = new File(args[0]);
System.out.println("文件或目录是否存在:" + file.exists());
System.out.println("是文件吗:" + file.isFile());
System.out.println("是目录吗:" + file.isDirectory());
System.out.println("名称:" + file .getName());
System.out.println("路径: " + file.getPath());
System.out.println("绝对路径: " + file.getAbsolutePath());
System.out.println("最后修改时间:" + file.lastModified());
System.out.println("文件大小:" + file.length()+ " 字节");
}
}
返回void和没有返回是两码事。
指出当命令行没有参数时, 这个程序就不继续执行了, 结束main函数.返回类型为void的函数, 如果在函数中不显示的调用 return; 这个语句, 那么在编译的时候, 编译器会自动的给你加上, 即省点事.所以一般看到的返回类型为void 的函数虽然没有return这个语句, 但实际上内部是存在的.
而 return 1; 是返回一个数字。2 一个方法有10行,你在第3行return,表示,我不想执行后面的7行了。
正是我想说的
return 和 return 0 是不同的return跳出所在方法,或是当前循环
就结束main..无需往下执行,这是一个逻辑判断