Project1

标题: 问一个问题.push方法是有什么作用的? [打印本页]

作者: 阿薯救世主    时间: 2013-12-30 18:36
标题: 问一个问题.push方法是有什么作用的?
#--------------------------------------------------------------------------
  # ● 设置
  #--------------------------------------------------------------------------
  def setup(troop_id)
    clear
    @troop_id = troop_id
    @enemies = []
    troop.members.each do |member|
      next unless $data_enemies[member.enemy_id]
      enemy = Game_Enemy.new(@enemies.size, member.enemy_id)
      enemy.hide if member.hidden
      enemy.screen_x = member.x
      enemy.screen_y = member.y
      @enemies.push(enemy)
    end
    init_screen_tone
    make_unique_names
  end

比如上面 @enemies.push(enemy),我搜索过push在不同种类的对象都可以使用,但是没找到作用是什么。在F1中找过对应对象的解释中也没有说push方法的作用,请问push有什么作用的?
作者: yagami    时间: 2013-12-30 18:44
push 是往数组尾部 添加个新元素  
a=[1,2,3]
a.push(4)
p a
应该打印 1234
对应的pop是从数组尾部删掉个元素
假设基于上面的代码 a.pop  然后打印 又变成123了
还有个 shift 是从首部删个元素 a.shift  这是p一下 就变23了
push pop 栈操作
push shift 队列操作
pop效率高于shift 因为shift了数组要做重排的操作
作者: 阿薯救世主    时间: 2013-12-31 15:38
yagami 发表于 2013-12-30 18:44
push 是往数组尾部 添加个新元素  
a=[1,2,3]
a.push(4)

明白了,多谢解答!




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1