我搞不懂以下JAVA代码是怎样运行的.请高手帮我解释下(当然越详细越好啦)

[复制链接]
查看11 | 回复1 | 2011-5-20 00:45:10 | 显示全部楼层 |阅读模式
class complex
{
        double real,imagin;
        complex(){
                this.real=0;
                this.imagin=0;       
        }
        complex(double r,double i){
                this.real=r;
                this.imagin=i;       
        }
        double getReal(){
                return real;
        }
        double getImagin(){
                return imagin;
        }
        complex complexAdd(complex number){
                complex result=new complex();
                result.real=this.real+number.real;
                result.imagin=this.imagin+number.imagin;
                return result;
        }
        complex complexMinus(complex number){
                complex result=new complex();
                result.real=this.real-number.real;
                result.imagin=this.imagin-number.imagin;
                return result;
        }
        complex complexMulti(complex number){
                complex result=new complex();
                result.real=this.real*number.real-this.imagin*number.imagin;
                result.imagin=this.real*number.imagin+this.imagin*number.real;
                return result;               
        }
        void complexToString(){
                System.out.println(this.real+"+"+this.imagin+"i");
        }
}
public class Complextest{
        public static void main(String []args){
        complex c1,c2,c3;
        String temp;
        c1=new complex(3,4);
        c2=new complex(2,3);
        c3=new complex();
        System.out.println("第1个复数的实数是"+c1.getReal()+"虚数是"+c1.getImagin());
        System.out.println("第2个复数的实数是"+c2.getReal()+"虚数是"+c2.getImagin());
        c3=c1.complexAdd(c2);
        System.out.println("这两个复数相加得:");
        c3.complexToString();       
        c3=c1.complexMinus(c2);
        System.out.println("这两个复数相减得:");
        c3.complexToString();                 
        c3=c1.complexMulti(c2);         
        System.out.println("这两个复数相乘得:");
        c3.complexToString();         
        }               
}
特点是这段代码complex complexMulti(complex number){
               
complex result=new complex();
               
result.real=this.real*number.real-this.imagin*number.imagin;
               
result.imagin=this.real*number.imagin+this.imagin*number.real;
               
return result;       
是怎样实现两个复数的相加的.?

回复

使用道具 举报

千问 | 2011-5-20 00:45:10 | 显示全部楼层
不是,是两个复数相乘的。比如:(a+bi)*(c+di)=(ac-bd)+(ad+bc)i这样的话,你在看看应该就能懂了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行