我认为这种方法可以转换为采用通用方法。然后我可以将它用于任何可枚举的类型。我如何制作这个通用的?
private bool AreAnyInteractablesInThisList(
IEnumerable<Interactable> Interactables,
Interactable InteractableToCheck)
{
foreach (var Interactable in Interactables)
{
if (Interactable.GetInstanceID() == InteractableToCheck.GetInstanceID())
return true;
}
return false;
}
答案 0 :(得分:3)
您需要创建一个声明plt.plot([1],[5], marker="o")
方法的界面:
GetInstanceID()
然后使用泛型参数必须实现该接口的约束使该方法通用:
public interface IInteractable
{
int GetInstanceID(); // I guess it's an int, but you can change that accordingly
}
请注意,您可以将方法缩短为:
private bool AreAnyInteractablesInThisList<T>(IEnumerable<T> Interactables, T InteractableToCheck) where T : IInteractable
{
foreach (var Interactable in Interactables)
{
if (Interactable.GetInstanceID() == InteractableToCheck.GetInstanceID()) return true;
}
return false;
}