我尝试使用int显示日期以3种方式显示我的日期,但每当我调用日期时,输出为"日期为0"。 我试图单独显示所有3个。我试图通过参数调用它们并将参数设置为3但仅显示0。
using System;
public class Date
{
private int month;
private int date;
private int year;
private int parameter;
private int p;
private int DisplayDate;
public Date(int p)
{
this.p = p;
}
public int getmonth()
{
return month;
}
public void setmonth(int m)
{
month = m;
}
public void setmonth(string m)
{
month = int.Parse(m);
}
public int getdate()
{
return date;
}
public void setdate(int d)
{
date = d;
}
public int getyear()
{
return year;
}
public void setyear(int y)
{
year = y;
}
public int getparameter()
{
return parameter;
}
public void setparameter(int p)
{
parameter = p;
if (p <= 3)
{
if (p == 1)
{
setmonth("1");
setdate(22);
setyear(2015);
}
else if (p == 2)
{
setyear(2015);
setmonth("2");
setdate(20);
}
else if (p == 3)
{
setmonth("March");
setdate(10);
setyear(2015);
}
}
}
}
class DateTest
{
static void Main(string[] args)
{
Date D = new Date (3);
Console.WriteLine("The Date is {0}", D.getparameter());
Console.WriteLine("Press any key to close");
Console.ReadKey();
}
}
答案 0 :(得分:0)
但您没有在代码中设置参数:)
public Date(int p)
{
this.p = p;//you set p, not parameter in your constructor
}
如果你想设置它,你应该调用方法setParameter()。
答案 1 :(得分:0)
你永远不会调用setparameter()方法,这就是你的getparameter()返回0的原因。 尝试使用p作为参数在构造函数中调用它。
public Date(int p)
{
this.p = p;
this.setparameter(p);
}
像这样。