如果对象实现了这个接口,如何从接口调用方法?
How to call method from interface, if object implement this interface?
我有一组元素
readonly Deposit[] deposits;
此集合中的一些元素是实现接口
interface IProlongable
{
public bool CanToProlong();
}
我需要计算接口
中的方法返回的 true
个结果的数量
public int CountPossibleToProlongDeposit()
{
int count = default;
foreach (var deposit in deposits)
{
if (deposit is IProlongable)
{
// Here i need to check if deposit.CanToProlog() is true and increment counter.
}
}
return count;
}
if (deposit is IProlongable p && p.CanToProlog())
{
count++;
}
当 pattern matching(使用 is
)时,您可以将结果转换为变量(此处为 p
)。
p
属于 IProlongable
类型,因此您可以访问方法 CanToProlog()
.
您还可以使用 ++
运算符将 count
递增 1。
我有一组元素
readonly Deposit[] deposits;
此集合中的一些元素是实现接口
interface IProlongable
{
public bool CanToProlong();
}
我需要计算接口
中的方法返回的true
个结果的数量
public int CountPossibleToProlongDeposit()
{
int count = default;
foreach (var deposit in deposits)
{
if (deposit is IProlongable)
{
// Here i need to check if deposit.CanToProlog() is true and increment counter.
}
}
return count;
}
if (deposit is IProlongable p && p.CanToProlog())
{
count++;
}
当 pattern matching(使用 is
)时,您可以将结果转换为变量(此处为 p
)。
p
属于 IProlongable
类型,因此您可以访问方法 CanToProlog()
.
您还可以使用 ++
运算符将 count
递增 1。