【问题标题】:Find an obj by position in list按列表中的位置查找 obj
【发布时间】:2019-12-21 12:51:47
【问题描述】:

我正在尝试编写一个函数,用户应该能够将 obj 存储到特定位置。当它找到它时,它会检查它是否可用,然后插入 obj。

public bool AddStorageManual(I3D s, int spot)
{
    // find warehouselocation by position in list
    foreach (WareHouseLocation wareHouseLocation in locations)
    {
        for (int i = 0; i < locations.Count; i++)
        {
            spot = i;
            if(locations[i] == null) 
            {
                bool available = wareHouseLocation.hasAvailableVolumeForObject(s);
                if (available) 
                {
                    wareHouseLocation.storage.Add(s);
                }
            }
        }               
    }
}

但我的代码需要一些帮助。

【问题讨论】:

  • 不需要遍历整个列表 WareHouseLocation wareHouseLocation = locations[spot];
  • 您的问题解决了吗?您想拥有第一个可用位置吗?这段代码有一些未知的路径,例如,如果available == false 会发生什么?请详细说明您想做什么
  • 是的,我能够解决这个问题。我想做的是我想在我的列表中找到位置'spot'。

标签: c# list search


【解决方案1】:
public bool AddStorageManual(I3DStorageObject s, int spot)
{
    // find warehouselocation by position in list

    WareHouseLocation wareHouseLocation = locations[spot];
    bool available = wareHouseLocation.hasAvailableVolumeForObject(s);
    if (available) 
    {
        wareHouseLocation.storage.Add(s);
        return true;
    }

    return false;
}       

【讨论】:

    猜你喜欢
    • 2017-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多