文件无法写入!急>_<

wang2679958237 2015-12-02 04:25:07
(1) 设计一个复数运算接口OperatorListener,定义抽象方法Complex add(Complex z)
(2) 设计一个复数类Complex,此复数类实现OperatorListener接口,该类定义
私有属性:实部,虚部
方法:返回此复数的详细信息String toString(),输出格式例如3+4i
实现接口里的Complex add(Complex stu)抽象方法,实现复数的相加
构造方法:有参构造方法初始化成员变量
(3) 设计测试类Test,主函数要求产生两个复数对象,对象的成员变量值来自命令行参数,调用add方法,实现两个复数的相加,把相加的结果值写入到c:/ComputeInfo.txt文件中,并处理所有的异常信息。

自己写的源代码:
(1)
public interface OperatorListener{
public Complex add(Complex z);
}

(2)
public class Complex implements OperatorListener{
private double real;
private double imag;
public Complex(){
}
public Complex(double real,double imag){
this.real=real;
this.imag=imag;
}
public Complex(Complex c){
real=c.real;
imag=c.imag;
}
public double getReal(){
return real;
}
public double getImag(){
return imag;
}
public String toString(){
System.out.println(real+"+"+imag+"i");
return null;
}
public Complex add(Complex stu){
Complex p=new Complex();
p.real=real+stu.getReal();
p.imag=imag+stu.getImag();
return p;
}
}

(3)
import java.io.*;
public class Test {
public static void main(String[] args){
// TODO 自动生成的方法存根
try{
double x1,y1;
double x2,y2;
x1=Double.parseDouble(args[0]);
y1=Double.parseDouble(args[1]);
x2=Double.parseDouble(args[2]);
y2=Double.parseDouble(args[3]);
Complex com1=new Complex(x1,y1);
Complex com2=new Complex(x2,y2);
Complex com=com1.add(com2);
File f=new File("D:\\新建文件夹\\ComputeInfo.txt");
FileOutputStream file=new FileOutputStream(f,true);
file.write(com.toString().getBytes("utf-8"));
file.close();
}
catch(ArrayIndexOutOfBoundsException e){
System.out.println("你还没有输入呢,请输入数值!");
}
catch(NumberFormatException e){
System.out.println("你输入的是字符,请输入数值!");
}
catch(IOException e){
System.out.println("写入文件不成功!");
}
}
}


在eclipse上可以显示结果,但是下面多出了两行:
Exception in thread "main" java.lang.NullPointerException
at Test.main(Test.java:16)

问题出在了file.write(com.toString().getBytes("utf-8")); 这一行

也无法写入到指定文件,想求教下这一行怎么改?
...全文
166 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wang2679958237 2016-01-16
  • 打赏
  • 举报
回复
引用 1 楼 my_God_sky 的回复:
空指针异常。com是什么东西?是为null值?自己看看逻辑。
知道了
ilmlife 2015-12-02
  • 打赏
  • 举报
回复
你自己toString方法不就返回的null么
_南天北落 2015-12-02
  • 打赏
  • 举报
回复
空指针异常。com是什么东西?是为null值?自己看看逻辑。

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧