c#将一个类的列表调用到另一个类

本文关键字:列表 另一个 调用 一个 | 更新日期: 2023-09-27 18:08:19

所以我试图调用一个类到一个方法。但是它很生气,因为这个方法没有调用列表而我创建的类是一个列表。我试着做一个单独的变量,不是一个列表,但它似乎没有工作,当我运行程序。

是在World Class的run方法下的"egg.BounceRock(rocks);"

世界级

public class World
{
    private List<Rock> rocks;
    private Egg egg;
    private Board board;
    private Graphics graphics;
    public World()
    {
        egg = new Egg();
        board = new Board();
        rocks = new List<Rock>();
        rocks.Add(new Rock(graphics, new Point(RockstartX, RockstartY), Color.Black));
        rocks.Add(new Rock(graphics, new Point(Rock2startX, Rock2startY), Color.Black));
    }
    public void Run()
    {
        foreach(Rock rock in rocks)
        {
            rock.Draw();
        }
        egg.Draw();
        egg.BounceRock(rocks);
        egg.BounceBoard(board);  
        egg.BounceFloor();          
    }
 }
<<p> 鸡蛋类/strong>
public class Egg
{
    public Egg()
    {
    }
    public void Draw()
    {
    }
    public void BounceFloor()
    {
    }
    public void BounceBoard(Board board)
    {
    }
    public void BounceRock(Rock rock)
    {
    }
}

c#将一个类的列表调用到另一个类

public class Egg
{
    public void BounceRock(Rock rock)
    {
        // Bounce the rock...
    }
    public void BounceRocks(List<Rock> rocks)
    {
        foreach(Rock rock in rocks)
        {
            BounceRock(rock);
        }
    }
}

所以你的蛋知道如何弹跳一块石头,但它不知道如何弹跳一堆石头…然而!通过添加一个以岩石列表为参数的新方法,您可以循环遍历列表中的每个岩石,并使用原始的弹跳方法来弹跳每个岩石。