java - 将数组的索引 0 留空以对应程序前端的实际值是否合适?

标签 java arrays

我正在创建一个包含 2 到 8 名玩家的游戏。我可以使用一个大小为 8 的数组来容纳 8 个玩家,但我也可以创建一个大小为 9 的数组并保留转换数字所需的所有计算和索引。

对我来说,做许多简单的计算(如 int index = playerNumber - 1)然后处理 arrayExample[0] 未被使用的事实感觉更愚蠢。在代码中实际使用它是否很少见?

最佳答案

虽然不使用一些数组元素并没有错,但我认为以这种方式使用数组显示了设计中更深层次的问题:它重复使用了属于 View 程序的一部分,作为数组的索引,属于程序的 model 部分(在 MVC 意义上)。这很脆弱,因为如果您将球员编号更改为球员姓名或球员颜色,您也必须更改索引方案。

这就是为什么我建议将数组索引和玩家编号视为属于不相交的不同域。

关于java - 将数组的索引 0 留空以对应程序前端的实际值是否合适?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29432765/

相关文章:

java - Spring Boot 和 AngularJS

php - 将 PHP 数组回显为 HTML?

javascript - 从现有数组中简化和排序新数组的创建

java - 卡在受信号量保护的交互中

c++ - 创建一个可以像 Vector of Vectors 一样工作的 C++ 模板类

python - 使用 numpy 数组时如何消除 for 循环并使用列表理解?

arrays - 通过扩展欧几里德算法在任意长度数组上查找 Bezout 系数

java - 如何在二维数组上正确使用格式化程序?

java - 在带有 for 循环的 if 语句中使用数组时找不到符号

java - 如何在 Java 中使域对象适应 GUI