将多个数字放在多个int变量中还是放在一个int[]数组中更好?
本文关键字:int 一个 数组 更好 变量 数字 | 更新日期: 2023-09-27 18:17:00
只是想知道,因为我经常发现自己输入像坐标(X, Y),并想知道哪种情况更好。如果我在一个数组中存储3个int,我将代码减少到1/3,但是有更多的理由更喜欢数组而不是多个变量吗?
说明示例:
int[] coord = new int[2];
coord[0] = 3;
coord[1] = 2;
或
int x = 3;
int y = 2;
我想说,如果坐标是紧密耦合的,您总是将它们同时传递(我相信这是真的),您可以创建一个结构体来封装它们。
public struct Coords
{
private int x;
private int y;
public Coords(int x, int y)
{
this.x = x;
this.y = y;
}
public int X
{
get { return x; }
}
public int Y
{
get { return y; }
}
}
在这种情况下,你可以这样传递它:
var c = new Coords(1, 2);
MyMethod(c);
你有一个优化标签附加到你的问题,但如果问题对你的应用程序的性能不是至关重要的,我会选择可读性/设计超过纳秒。
这取决于你使用的值。
如果你持有大量的值,比如在游戏中,你应该让它易于自己和其他程序员阅读,并阐明值的含义。
你不应该在一个数组中保存许多值,比如HP, MP,速度,旋转,高度,宽度,…而没有说清楚它们是什么
但是你应该说HP=100;议员= 80,……在这种情况下,几乎每次都有一个"玩家"类。这个类包含player。点数,玩家。magicpoints,球员。速度,…
但是对于坐标,我认为程序员使用的是带有x, y(有时还有z)坐标的数组。