簡體   English   中英

為什么我的List <>對象上出現對象引用錯誤?

[英]Why am I getting an object reference error on my List<> object?

我有一個名為StartingUserInterface的類,它有一個Teams列表,如下所示:

public class StartingUserInterface
{
    public List<Team> Teams = new List<Team>();
    public static string PlayerName;
    AddPlayer();
}

在同一個類中的方法中,我試圖通過首先在Teams列表中找到團隊,然后將玩家的名稱設置為該Teams ,將用戶指定的玩家名稱添加到用戶指定的團隊:

public static void AddPlayer()
{ 
    PlayerName = Console.ReadLine();
    Team team = new Team();
    team.Name = Console.ReadLine();
    team = Teams.Find(x => x.Name == team.Name);
    team.AddPlayer(PlayerName);
}

以下是Team類的片段:

public class Team
{ 
    public string Name;

    public void AddPlayer(string name)
    {
        Player Player = new Player()
        {
            Name = name;
        };
}

我得到的錯誤消息說

“非靜態字段,方法或屬性'StartingUserInterface.Teams'需要對象引用

...當我嘗試將團隊列表項設置為團隊對象時: team = Teams.Find(x => x.Name == team.Name); 在AddPlayer()方法中。 我做錯了什么嗎? 在我看來,它說List對象不存在,但我在類的開頭創建了它的一個實例。

您不能在靜態方法中使用非靜態字段,因此您應該使Teams List成為靜態變量。

你的

public List<Team> Teams = new List<Team>();

public static List<Team> Teams = new List<Team>();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM