java中file类的方法createNewFile()返回值是boolean,为什么可以直接调用,而不用赋值给一个变量?
例如importjava.io.*;publicclassFileDemo{publicstaticvoidmain(Stringargs[]){Filef=newFil...
例如
import java.io.*;
public class FileDemo{
public static void main(String args[]){
File f = new File("D:\\test.txt");
try{
f.createNewFile(); //Boolean b = f.createNewFile();赋值应该才符合语法规则
}catch(IOException e){
e.printStackTrace();
}
}
}
实验证明二种写法都可,不理解第一种写法的原因,试了一下自定义的方法,直接调用不负责 展开
import java.io.*;
public class FileDemo{
public static void main(String args[]){
File f = new File("D:\\test.txt");
try{
f.createNewFile(); //Boolean b = f.createNewFile();赋值应该才符合语法规则
}catch(IOException e){
e.printStackTrace();
}
}
}
实验证明二种写法都可,不理解第一种写法的原因,试了一下自定义的方法,直接调用不负责 展开
展开全部
一般调用createNewFile()这个方法的目的就是创建文件,文件存在与否不是很重要。查看api可以知道当不存在指定文件是会自动创建文件并返回true,当存在指定文件时不会创建该文件并返回false。
还是一句话,用了createNewFile()就比较保险,无论它返回true还是false指定的文件都是会存在地。
还是一句话,用了createNewFile()就比较保险,无论它返回true还是false指定的文件都是会存在地。
更多追问追答
追问
问题是自定义一个类
class A{
public Boolean C(){
}
}
主方法中调用时
...
A a = new A();
a.c(); //为什么此处编译通不过,报错“不是语句”。而f.createNewFile()可以编译通过。
...
追答
public Boolean C()你的方法声明上就指明了C方法要返回Boolean类型的值。要么return一个布尔值,要么返回null,否则编译必然通不过地。
难道你你定义了一个c方法,里面什么语句也不执行?这肯定通不过编译啊,你没给返回值啊,c方法要return东东啊。
你要是加一句return true;就能通过编译了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |