C#- 我想要一个创建列表 oop 的方法
本文关键字:列表 创建 oop 方法 一个 我想要 C#- | 更新日期: 2024-11-07 03:39:33
这是我在这个平台上的第一个问题。你是我的神!我有一个小项目,在那里我学习如何在 C# 中查看 OOP。我有4个clas(形状,正方形,圆形,三角形)方形类实现了 2 个函数(面积和周长)和一个实现了这些功能的方法 GetPrint。其他类已使用每个表单所需的公式实现了面积和周长。现在我必须创建另一个类 ShapeFactory,它有 2 个接口(读取数据和打印数据)。我需要一种方法在 ReadData 中实现一个函数,该功能将在控制台中创建的所有表单存储在列表中,并在我选择选项 4(Exit) 以显示存储在该表中的区域和周长之后。例如:
do
{
Console.ReadKey();
Console.WriteLine("Choose a form:");
Console.WriteLine("1:Triangle");
Console.WriteLine("2:Square");
Console.WriteLine("3:Circle");
Console.WriteLine("4:Exit");
Int32.TryParse(Console.ReadLine(), out i);
if (i == 1)
{
Console.WriteLine("l1:");
int n = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("l2:");
int m = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("l3:");
int q = Convert.ToInt32(Console.ReadLine());
Triangle t = new Triangle(n, m, q);
t.GetPrint();
Console.ReadKey();
}
我需要用户在控制台中添加的所有信息,以便将此三角形存储在具有 ReadData 接口的表中,并使用 PrintData 接口从该选项卡打印。我尝试实现 PrintData 以使用第一个想法 GetPrint,一旦 IF 语句结束,它就会在控制台中显示区域和周长。
我对你想要发生的事情感到非常困惑。
假设正方形,圆形和三角形继承自形状。
public class Circle : Shape
在程序的主要方法上。
List<Shape> shapes = new List<Shape>();
do
{
Console.ReadKey();
Console.WriteLine("Choose a form:");
Console.WriteLine("1:Triangle");
Console.WriteLine("2:Square");
Console.WriteLine("3:Circle");
Console.WriteLine("4:Exit");
Int32.TryParse(Console.ReadLine(), out i);
if (i == 1)
{
Console.WriteLine("l1:");
int n = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("l2:");
int m = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("l3:");
int q = Convert.ToInt32(Console.ReadLine());
Triangle t = new Triangle(n, m, q);
shapes.Add(t);
t.GetPrint();
Console.ReadKey();
}
// do the same for square and circle
// shapes.Add(variable);
在应用程序退出之前结束时。
您可以
foreach(var shape in shapes)
{
Console.WriteLine("Area: {0}'nPerimeter: {1}'n", shape.Area, shape.Perimeter);
}
不确定这是否是你想要的...