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();
}
}
}
实验证明二种写法都可,不理解第一种写法的原因,试了一下自定义的方法,直接调用不负责
展开
 我来答
Rainnous_bhw
2014-08-24 · TA获得超过111个赞
知道小有建树答主
回答量:89
采纳率:100%
帮助的人:89.1万
展开全部
一般调用createNewFile()这个方法的目的就是创建文件,文件存在与否不是很重要。查看api可以知道当不存在指定文件是会自动创建文件并返回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;就能通过编译了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式