还有就是直接重载是什么??

难道说版主的意思是这样写?
using System;
namespace ForecastSystem
{
/// <summary>
/// method_weight 的摘要说明。
/// </summary>
public class method_twice
{
//private variables to hold class properties
private string strTime;
private int intArrayNumber;
private decimal decQuantity,decWeight,decInitial1,decInitial2,decSingleTotal,decResult,decMSE;
private static int intCount;
private static decimal []decSingle=new decimal[100];
private static decimal []decTotal_number1=new decimal[100];
private static decimal []decTotal_number2=new decimal[100];
public method(int intArrayNumber,decimal decWeight,string strTime,decimal decQuantity,decimal decInitial1)
{
//
this.Time=strTime;
this.Quantity=decQuantity;
this.Weight=decWeight;
this.Initial1=decInitial1;
this.ArrayNumber=intArrayNumber;
AddTotals1();
Add_number1();
Forecast1();
CalculateMSE1();
//
}
public method(int intArrayNumber,decimal decWeight,string strTime,decimal decQuantity,decimal decInitial1,decimal decInitial2)
{
//
this.Time=strTime;
this.Quantity=decQuantity;
this.Weight=decWeight;
this.Initial1=decInitial1;
this.Initial2=decInitial2;
this.ArrayNumber=intArrayNumber;
AddTotals2();
Add_number2();
Forecast2();
CalculateMSE2();
//
}
......
protected void AddTotals1()
{
decTotal_number1[0]=decInitial;
decSingle[intCount]=decQuantity;
intCount++;
}
protected void Add_number1()
{
if(intArrayNumber<=intCount)
{
for(int a=0;a<intArrayNumber;a++)
{
decTotal_number1[a+1]=decWeight*decSingle[a]+(1-decWeight)*decTotal_number1[a];
}
}
}
protected void Forecast1()
{
decResult=decTotal_number1[intArrayNumber];
}
protected void CalculateMSE1()
{
if(intArrayNumber<=intCount)
{
for(int a=0;a<intArrayNumber;a++)
{
decSingleTotal+=(decSingle[a]-decTotal_number1[a])*(decSingle[a]-decTotal_number1[a]);
}
decMSE=decSingleTotal/intArrayNumber;
decSingleTotal=0;
}
}
protected void AddTotals2()
{
decTotal_number1[0]=decInitial1;
decTotal_number2[0]=decInitial2;
decSingle[intCount]=decQuantity;
intCount++;
}
protected void Add_number2()
{
if(intArrayNumber<=intCount)
{
for(int a=0;a<intArrayNumber;a++)
{
decTotal_number1[a+1]=decWeight*decSingle[a]+(1-decWeight)*decTotal_number1[a];
decTotal_number2[a+1]=decWeight*decTotal_number1[a]+(1-decWeight)*decTotal_number2[a];
}
}
}
protected void Forecast2()
{
decResult=decTotal_number2[intArrayNumber];
}
protected void CalculateMSE2()
{
if(intArrayNumber<=intCount)
{
for(int a=0;a<intArrayNumber;a++)
{
decSingleTotal+=(decSingle[a]-decTotal_number2[a])*(decSingle[a]-decTotal_number2[a]);
}
decMSE=decSingleTotal/intArrayNumber;
decSingleTotal=0;
}
}
}
}
我把两个类合并了,把函数重载了。
爽阿!!!
using System;
namespace ForecastSystem
{
/// <summary>
/// method_index 的摘要说明。
/// </summary>
public class method_index
{
//private variables to hold class properties
private string strTime;
private int intArrayNumber,i;
private decimal decQuantity,decWeight,decInitial1,decInitial2,decSingleTotal,decResult,decMSE;
private static int intCount1,intCount2;
private static decimal []decSingle=new decimal[100];
private static decimal []decTotal_number=new decimal[100];
private static decimal []decTotal_number1=new decimal[100];
private static decimal []decTotal_number2=new decimal[100];
public method_index(int intArrayNumber,decimal decWeight,string strTime,decimal decQuantity,decimal decInitial1)
{
//
this.Time=strTime;
this.Quantity=decQuantity;
this.Weight=decWeight;
this.Initial1=decInitial1;
this.ArrayNumber=intArrayNumber;
Add_number1();
Forecast1();
//
}
public method_index(int intArrayNumber,decimal decWeight,string strTime,decimal decQuantity,decimal decInitial1,decimal decInitial2)
{
//
this.Time=strTime;
this.Quantity=decQuantity;
this.Weight=decWeight;
this.Initial1=decInitial1;
this.Initial2=decInitial2;
this.ArrayNumber=intArrayNumber;
Add_number2();
Forecast2();
//
}
public method_index(int i)
{
this.i=i;
if(i==1)
{
newforecast1();
}
else if(i==2)
{
newforecast2();
}
}
public string Time
{
get
{
return strTime;
}
set
{
strTime=value;
}
}
public int ArrayNumber
{
get
{
return intArrayNumber;
}
set
{
intArrayNumber=value;
}
}
public decimal Initial1
{
get
{
return decInitial1;
}
set
{
decInitial1=value;
}
}
public decimal Initial2
{
get
{
return decInitial2;
}
set
{
decInitial2=value;
}
}
public decimal Quantity
{
get
{
return decQuantity;
}
set
{
decQuantity=value;
}
}
public decimal Weight
{
get
{
return decWeight;
}
set
{
decWeight=value;
}
}
public decimal SingleTotal
{
get
{
return decSingleTotal;
}
set
{
decSingleTotal=value;
}
}
public decimal Result
{
get
{
return decResult;
}
set
{
decResult=value;
}
}
public decimal MSE
{
get
{
return decMSE;
}
set
{
decMSE=value;
}
}
public static int Count1
{
get
{
return intCount1;
}
}
public static int Count2
{
get
{
return intCount2;
}
}
protected void Add_number1()
{
decTotal_number[0]=decInitial1;
decSingle[intCount1]=decQuantity;
intCount1++;
if(intArrayNumber<=intCount1)
{
for(int a=0;a<intArrayNumber;a++)
{
decTotal_number[a+1]=decWeight*decSingle[a]+(1-decWeight)*decTotal_number[a];
}
}
}
protected void Forecast1()
{
decResult=decTotal_number[intArrayNumber];
if(intArrayNumber<=intCount1)
{
for(int a=0;a<intArrayNumber;a++)
{
decSingleTotal+=(decSingle[a]-decTotal_number[a])*(decSingle[a]-decTotal_number[a]);
}
decMSE=decSingleTotal/intArrayNumber;
decSingleTotal=0;
}
}
protected void Add_number2()
{
decTotal_number1[0]=decInitial1;
decTotal_number2[0]=decInitial2;
decSingle[intCount2]=decQuantity;
intCount2++;
if(intArrayNumber<=intCount2)
{
for(int a=0;a<intArrayNumber;a++)
{
decTotal_number1[a+1]=decWeight*decSingle[a]+(1-decWeight)*decTotal_number1[a];
decTotal_number2[a+1]=decWeight*decTotal_number1[a+1]+(1-decWeight)*decTotal_number2[a];
decTotal_number[a]=(1+(1/(1-decWeight)))*decTotal_number1[a+1]-(1/(1-decWeight))*decTotal_number2[a+1];
}
}
}
protected void Forecast2()
{
decResult=decTotal_number[intArrayNumber-1];
if(intArrayNumber<=intCount2)
{
for(int a=1;a<intArrayNumber;a++)
{
decSingleTotal+=(decSingle[a]-decTotal_number[a-1])*(decSingle[a]-decTotal_number[a-1]);
}
decMSE=decSingleTotal/(intArrayNumber-1);
decSingleTotal=0;
}
}
protected void newforecast1()
{
intCount1=0;
}
protected void newforecast2()
{
intCount2=0;
}
}
}