我正在研究一个不寻常的要求,其中有一个整数参数x,它可以取一个值或一组值。如果参数采用一组值,则仅存储最大值和最小值就足够了。通常的C#思考让我有四个变量,即x,minX,maxX和布尔变量(知道变量是一个还是一组值),我有四个这样的参数,导致类变量膨胀(总共16个)变量)。
C#中是否有任何构造可以帮助我实现上述约束的高效存储?我无法超越可空的价值思考。
答案 0 :(得分:1)
您可以创建自己的struct
或查看System.Tuple - 内置的通用“容器”类
答案 1 :(得分:0)
min
和max
。
如果只有一个值,则min
== max
。
在这种情况下,你甚至可以给来电者提供一些糖:
public SomeType MyMethod(int minA, int maxA, int minB, int maxB, int minC, int maxC, int minD, int maxD)
{
//real work here.
}
public SomeType MyMethod(int a, int b, int c, int d)
{
return MyMethod(a, a, b, b, c, c, d, d);
}