我正在用 Ruby 设计一个游戏以学习该语言,我的游戏需要处于从数组中删除项目并将它们添加到另一个数组中的恒定循环,而不是从另一个数组中删除并读取第一个数组。我想知道当我调用 Array.delete() 时内部会发生什么。我宁愿为我的游戏使用链表,因为从链表中删除和添加到链表比在数组上更有效。然而,Array 是迄今为止我在 Ruby 中遇到的唯一数据结构。它真的是唯一可用的吗?
编辑:这是一个基本的射击游戏,敌舰可以向玩家发射子弹。为了避免每次敌人向玩家开火时都必须分配新子弹,我在游戏开始前分配了很多子弹。当敌人射击时,他从可用子弹列表中挑选一颗子弹并将其放入“活动”子弹列表中。负责在屏幕上绘制项目符号的类只在活动项目符号列表中绘制那些项目符号。当子弹离开屏幕时,它会返回可用子弹列表。这就是所有洗牌的来源......